Εμφάνιση ενός μόνο μηνύματος
  #8  
Παλιά 24-03-13, 17:48
Το avatar του χρήστη Tasos
Tasos Ο χρήστης Tasos δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.011
Προεπιλογή

Καλησπέρα!

Αγαπητέ Πάνο, δεν γνωρίζουμε πως έχεις στήσει τη βάση σου για να μπορέσουμε ενδεχομένως να σου δώσουμε μια ακριβέστερη απάντηση.

Ωστόσο δοκίμασε τα παρακάτω:

1. Φρόντισε να έχεις εγκαταστήσει το τελευταίο Service pack της έκδοσης Office που χρησιμοποιείς.

2. Δημιούργησε ένα αντίγραφο ασφαλείας για κάθε ενδεχόμενο.

4. Κάνε συμπύκνωση και επιδιόρθωση της βάσης σου.

4. Βάλε τον παρακάτω κώδικα ( Από την Microsoft ) σε μια λειτουργική μονάδα και τρέξε τον μια φορά αφού προηγουμένως έχεις κλείσει όλους τους πίνακες της βάσης:


Κώδικας:
Option Compare Database
Option Explicit

Sub TurnOffSubDataSheets()
    Dim MyDB As DAO.Database
    Dim MyProperty As DAO.Property
    Dim propName As String, propVal As String, rplpropValue As String
    Dim propType As Integer, i As Integer
    Dim intCount As Integer

    On Error GoTo tagError

    Set MyDB = CurrentDb
    propName = "SubDataSheetName"
    propType = 10
    propVal = "[None]"
    rplpropValue = "[Auto]"
    intCount = 0

    For i = 0 To MyDB.TableDefs.Count - 1
        If (MyDB.TableDefs(i).Attributes And dbSystemObject) = 0 Then
            If MyDB.TableDefs(i).Properties(propName).Value = rplpropValue Then
                MyDB.TableDefs(i).Properties(propName).Value = propVal
                intCount = intCount + 1
            End If
        End If
tagFromErrorHandling:
    Next i

    MyDB.Close

    If intCount > 0 Then
        MsgBox "The " & propName & " value for " & intCount & " non-system tables has been updated to " & propVal & "."
    End If

    Exit Sub

tagError:
    If Err.Number = 3270 Then
        Set MyProperty = MyDB.TableDefs(i).CreateProperty(propName)
        MyProperty.Type = propType
        MyProperty.Value = propVal
        MyDB.TableDefs(i).Properties.Append MyProperty
        intCount = intCount + 1
        Resume tagFromErrorHandling
    Else
        MsgBox Err.Description & vbCrLf & vbCrLf & " in TurnOffSubDataSheets routine."
    End If
End Sub
Αν το σφάλμα (υποθέτω το σφάλμα με το νούμερο 3014) συνεχίζει να εμφανίζεται τότε 2 πράγματα μπορούν να συμβαίνουν:

1. Ένα ή περισσότερα αντικείμενα της βάσης σου έχει "σπάσει"

Σ΄ αυτή την περίπτωση δοκίμασε να κάνεις εισαγωγή όλων των αντικειμένων της βάσης σου σε μια νέα βάση.

2. Υπάρχει σχεδιαστικό σφάλμα που προκαλεί την επανάληψη ανοίγματος πινάκων μέχρι να φτάσει η Access όρια της και να σου εμφανίσει το εν λόγω μήνυμα σφάλματος.

Πρέπει να περιορίσεις τα "ερωτήματα των ερωτημάτων" και να χρησιμοποιήσεις ερωτήματα δημιουργίας πινάκων πάνω στου οποίους θα βασίζεται η έκθεση σου.

Τώρα εάν η έκθεση σου πρόκειται να εκτυπωθεί, θα πρέπει να προσέχεις την αναγνωσιμότητα της (αριθμός & διάταξη πεδίων κλπ...)

Εάν δεν έχεις σκοπό να εκτυπώσεις την έκθεση θα σου πρότεινα να χρησιμοποιήσεις Συγκεντρωτικό πίνακα.

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση