Μήνυμα σφάλματος όταν μετατρέπετε ένα αρχείο βάσης δεδομένων από μια παλαιότερη έκδοση της Access σε ένα αρχείο της Access 2007: "σφάλμα χρόνου εκτέλεσης '13': ασυμφωνία τύπου"


Συμπτώματα


Όταν μετατρέπετε ένα αρχείο βάσης δεδομένων από μια παλαιότερη έκδοση της Microsoft Access σε ένα αρχείο του Microsoft Office Access 2007, η εφαρμογή ενδέχεται να σταματήσει να ανταποκρίνεται κατά την προσπάθειά σας να εκτελέσετε ή να μεταγλωττίσετε κώδικα που χρησιμοποιεί Data Access Objects (DAO). Επιπλέον, ενδέχεται να λαμβάνετε το ακόλουθο μήνυμα λάθους:
Σφάλμα χρόνου εκτέλεσης '13':

Ασυμφωνία τύπων

Αιτία


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

Εναλλακτικός τρόπος αντιμετώπισης


Για να επιλύσετε αυτό το ζήτημα, χρησιμοποιήστε μία από τις ακόλουθες μεθόδους:

Μέθοδος 1

Στο πλαίσιο διαλόγου " αναφορές ", βεβαιωθείτε ότι ο μηχανισμός βάσης δεδομένων Microsoft Office 2007 Access βιβλιοθήκη αντικειμένων είναι μεγαλύτερη σε προτεραιότητα από Αντικείμενα Microsoft ActiveX Data Objects. Για να το κάνετε αυτό, ακολουθήστε τα εξής βήματα:
  1. Εκκίνηση της Access 2007.
  2. Κάντε κλικ στο Κουμπί του Microsoft Officeκαι, στη συνέχεια, κάντε κλικ στο κουμπί Άνοιγμα.
  3. Στο πλαίσιο διαλόγου " Άνοιγμα ", εντοπίστε και επιλέξτε το < όνομα βάσης δεδομένων >και, στη συνέχεια, κάντε κλικ στο κουμπί Άνοιγμα.
  4. Από το μενού " Εργαλεία βάσης δεδομένων ", κάντε κλικ στο κουμπί Visual Basic στην ομάδα μακροεντολών για να ανοίξετε το πρόγραμμα επεξεργασίας Visual Basic (VBE).

    Σημείωση Μπορείτε επίσης να πατήσετε ALT + F11 για να ανοίξετε το VBE.
  5. Στο μενού Εργαλεία , κάντε κλικ στο κουμπί " αναφορές".
  6. Στο πλαίσιο διαλόγου " αναφορές - < όνομα βάσης δεδομένων > ", κάντε κλικ στο μηχανισμό βάσης δεδομένων Microsoft Office 2007 Access βιβλιοθήκη αντικειμένων.
  7. Κάντε κλικ στο βέλος της προτεραιότητας για να μετακινήσετε το μηχανισμό βάσης δεδομένων Microsoft Office 2007 Access βιβλιοθήκη αντικειμένων πάνω από τα Αντικείμενα δεδομένων ActiveX της Microsoftκαι, στη συνέχεια, κάντε κλικ στο κουμπί OK.

Μέθοδος 2

Όταν πρέπει να αναφέρουν και να χρησιμοποιήσετε βιβλιοθήκες αντικειμένων DAO και ActiveX Data Objects (ADO), διάσταση τα αντικείμενα ρητά ως εξής:
Dim adoRS As ADODB.Recordset Dim daoRS As DAO.Recordset

Η μέθοδος 3

Εάν δεν χρησιμοποιείτε μια βιβλιοθήκη αντικειμένων ADO, καταργήστε την αναφορά στη βιβλιοθήκη. Για να το κάνετε αυτό, ακολουθήστε τα εξής βήματα:
  1. Εκκίνηση της Access 2007.
  2. Κάντε κλικ στο Κουμπί του Microsoft Officeκαι, στη συνέχεια, κάντε κλικ στο κουμπί Άνοιγμα.
  3. Στο πλαίσιο διαλόγου " Άνοιγμα ", εντοπίστε και επιλέξτε το < όνομα βάσης δεδομένων >και, στη συνέχεια, κάντε κλικ στο κουμπί Άνοιγμα.
  4. Από το μενού " Εργαλεία βάσης δεδομένων ", κάντε κλικ στο κουμπί Visual Basic στην ομάδα μακροεντολών για να ανοίξετε το VBE.
    Σημείωση Μπορείτε επίσης να πατήσετε ALT + F11 για να ανοίξετε το VBE.
  5. Στο μενού Εργαλεία , κάντε κλικ στο κουμπί " αναφορές".
  6. Στο πλαίσιο διαλόγου " αναφορές - < όνομα βάσης δεδομένων > ", κάντε κλικ για να καταργήσετε Τα αντικείμενα δεδομένων ActiveX της Microsoftκαι, στη συνέχεια, κάντε κλικ στο κουμπί OK.

Κατάσταση


Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".