Access97 to Access2000

Hallo !
Ich habe unter Access97 eine VBA Funktion geschrieben die
folgende Zeile enthält:

Dim db as Database

Unter Access97 ist soweit alles ok.
Diese Datenbank habe ich dann mit Access2000 geladen und
konvertiert wie Access2000 vorschlägt.
Ich erhalte dann folgende Warnmeldung:
„Fehler beim kompilieren“
„Projekt oder Bibliotek nicht gefunden“

Dann zeigt der Kompiler auf die og. Zeile.

Was ist das ?

(PS: ich besitze noch keine Access2000 Kenntnisse)
Yannick

„Fehler beim kompilieren“
„Projekt oder Bibliotek nicht gefunden“

Dann zeigt der Kompiler auf die og. Zeile.

Was ist das ?

(PS: ich besitze noch keine Access2000 Kenntnisse)
Yannick

Hallo Yannick,

ich hatte auch Probleme mit dem Konvertieren - die gleiche Meldung kam auch bei meiner DB.

Probier mal folgendes:

Erstelle eine leere MDB mit Access 2000 und importiere von dort aus ALLES aus Deiner 97´er DB.

Dann sollte die Version 2000 ohne Fehler laufen.

gruss moritzbock

In VBA: Extras-Verweise-und Mikrosoft DAO 3.6 auswählen oder auf ADO umstellen.

ggf. auch hier nachsehen:
http://www.donkarl.com/AccessFAQ.htm?/FAQ/FAQ7Bugs.htm

Gruss
Nils

Access2000 stellt standardmäßig „nur“ ADO ein. D.H., der Bursche kennt DAO nicht - die Bibliothek, auf die Du Dich beziehst in 97er Versionen.

Habe mal eine Verweis-Funktion geschrieben, die das überprüft, ggfls. abändert und gleichzeitig noch einen Verweis auf Outlook einrichtet (Outlook ist nur ein Beispiel, könnte man ja auch mit allen anderen benötigten Biblios machen, die man so erwarten möchte, damit die Kiste läuft). Ist aber nur angedacht, also keine Garantie für Fehlerfreiheit.

Dennoch beschde Grüße aus Finnland
Stephan

Function Verweis()
'Setzt DAO 3.6 und Outlook-Verweis, wenn nicht vorhanden. Entfernt ADO, wenn gesetzt
'Läßt sich eben analog für jeden anderen Verweis-Vorgang erweitern.
Dim ref As Reference
Dim DAOflag As Boolean
Dim OUTLflag As Boolean
DAOflag = False
OUTLflag = False
For Each ref In References
'Debug.Print ref.Name, ref.FullPath
If ref.Name = „DAO“ Then
DAOflag = True
End If

If ref.Name = „Outlook“ Then
OUTLflag = True
End If

If ref.Name = „ADODB“ Then
References.Remove ref
End If
Next

If DAOflag = False Then 'DAO-Verweis nicht vorhanden
On Error Resume Next
References.AddFromFile („C:\Programme\Gemeinsame Dateien\Microsoft Shared\DAO\dao360.dll“)
End If

If OUTLflag = False Then 'Outlook-Verweis nicht vorhanden
On Error Resume Next
References.AddFromFile („C:\Programme\Microsoft Office\Office\msoutl9.olb“)
End If

End Function

Hallo Yannick,

ich hab noch was gefunden …

http://www.donkarl.com/AccessFAQ.htm?/FAQ/FAQ7Bugs.htm

Das wird Dein Problem lösen.

gruss moritzbock

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]