Visual Basic for Applications (VBA) fungerar fel i en databas utan referenser
Anteckning
Office 365 ProPlus byter namn till Microsoft 365-appar för företag. Mer information om den här ändringen finns i det här blogginlägget.
Ursprungligt KB-nummer: 283806
Anteckning
Kräver grundläggande makron, kodning och kompatibilitetsfärdigheter. Den här artikeln gäller en Microsoft Access-databas (.mdb och .accdb) och ett Microsoft Access-projekt (.adp).
Symptom
Om du har en procedur som innehåller en Visual Basic for Applications-funktion och databasen innehåller en referens till ett bibliotek eller bibliotek för saknade objekttyper, kan du få något av följande felmeddelanden när du kompilerar dina moduler eller kör proceduren:
Felmeddelande 1
Din Microsoft Access-databas eller ditt Microsoft Access-projekt innehåller en saknad eller bruten referens till filen <filename> .
* Du måste åtgärda referensen för att databasen eller projektet ska fungera ordentligt.
* Klicka på Hjälp om du vill veta hur du åtgärdar referensen.
Felmeddelande 2
Kompileringsfel:
Kan inte hitta projekt eller bibliotek
Orsak
Databasen innehåller en referens till en databas, ett typbibliotek eller objektbibliotek som är markerat som SAKNAS: <referencename> i dialogrutan Referenser.
Lösning
Om du vill ta bort referensen som saknas gör du så här:
- Öppna databasen.
- Tryck på ALT +F11 för att öppna Visual Basic Editor.
- Klicka på Referenser på Verktyg-menyn.
- Avmarkera kryssrutan för typbiblioteket eller objektbiblioteket som markerats som SAKNADE: <referencename>.
Ett alternativ till att ta bort referensen är att återställa den refererade filen till den sökväg som anges i dialogrutan Referenser. Om den refererade filen finns på en ny plats avmarkerar du referensen MISSING: <referencename> och skapar sedan en ny referens till filen i den nya mappen.
Anteckning
I ett Access-program som körs kan du inte visa referenser från en meny. I följande artikel visas emellertid hur du visar referenser med hjälp av kod: 209849 att stega igenom referenser för att visa deras egenskaper
Steg för att återskapa beteendet
Öppna exempeldatabasen Northwind.mdb.
Skapa ett nytt formulär som inte baseras på någon tabell eller fråga.
Klicka på Kontroll på ActiveX Infoga.
I listan Markera ActiveX bildkontroll klickar du på Kodak-bildredigeringskontroll och sedan på OK.
Spara formuläret som en frmReference och stäng det sedan.
Stäng Northwind.mdb och avsluta Access.
Hitta och byt namn på filen ImgEdit.ocx till ImgEdit.old.
Starta Access och öppna sedan Northwind.mdb.
Öppna startmodulen i designvyn.
På menyn Felsökning klickar du på Kompilering Northwind. Observera att du får båda felmeddelandena som nämns i avsnittet "Symptom" i den här artikeln.
Klicka på OK. Observera att dialogrutan Referenser visas. Följande referens är markerad i dialogrutan Tillgängliga referenser:
MISSING: Kodak Image Edit ControlKlicka på Avbryt i dialogrutan Tillgängliga referenser.
Hitta och byt namn på filen ImgEdit.old till ImgEdit.ocx.
Upprepa steg 10 och observera att felmeddelandet inte längre visas.