PDA

Vollständige Version anzeigen : Laufzeitfehler nach Konvertierung von 97 auf 2000


Karstenlu
11.08.2001, 10:37
Hallo,

ich erhalten, nachdem ich die db von 97 auf 2000 konvertiert habe immer einen Laufzeitfehler bei der Anwendung.

3343Nicht erkennbares datenbankformat

anbei der code

'Das Ereignis Close wird von Word aufgerufen, wenn das
'Dokument geschlossen wird.
'Zuerst wird geprüft, ob das Dokument gespeichert wurde und
'die Dokumentvariablen mit Werten gefüllt sind.
Private Sub Document_Close()
Dim ws As Workspace
Dim db As DATABASE
Dim rsBriefe As RECORDSET
Dim strDataFilename As String
Dim strTablename As String
Dim bDocIsSaved As Boolean

'Prüfen ob das Dokument schon gespeichert wurde
bDocIsSaved = Me.Saved
Do Until bDocIsSaved
If (MsgBox("Das Dokument ist noch nicht gespeichert!" & vbCrLf & _
"Möchten Sie nun speichern?", vbYesNo, DIALOG_TITLE) = vbYes) Then
On Error Resume Next
'Beim Abbrechen des Speicherns durch den Benutzer tritt der
'Fehler 4198 auf
Me.Save
bDocIsSaved = Me.Saved
Else
bDocIsSaved = True
End If
Loop
On Error GoTo 0

strDataFilename = CStr(Me.DataFilename)
'Wenn gültige Werte eingetragen wurden:
If Me.Saved Then
If (Len(strDataFilename) > 0) Then
Set ws = DBEngine.CreateWorkspace("WordSpeicherFunktion", "Admin", "")
If (Len(Dir(strDataFilename)) > 0) Then
-----> Set db = ws.OpenDatabase(strDataFilename)<-----
Set rsBriefe = db.OpenRecordset(TBL_NAME, dbOpenDynaset)
rsBriefe.AddNew
rsBriefe.Fields(TBL_BETREFFFELD) = Me.Bookmarks("Betreff").Range.Text
rsBriefe.Fields(TBL_FILENAMEFIELD) = Me.Path & "\" & Me.Name
rsBriefe.Update
rsBriefe.Close
db.Close
Else
MsgBox "Der Dateipfad der Datendatei hat sich geändert!" & _
" Ein Speichern des Dateinamens ist nicht möglich", vbOKOnly, DIALOG_TITLE
End If
ws.Close
Else
MsgBox "Die Dokumentvariablen enthalten ungültige Werte." & vbCrLf & _
"Die Datendatei kann deshalb nicht aktualisiert werden.", vbOKOnly, DIALOG_TITLE
End If
End If
Me.Saved = True
End Sub


1000 Dank

Mad
11.08.2001, 10:43
Hallo Karstenlu,
vielleicht hast du ein Verweis-Problem.
Unter www.donkarl.com (http://www.donkarl.com) steht dazu:

7.1 VERWEISE


P r o b l e m
In A97 oder A00-mdbs werden VBA-Standardfunktionen nicht mehr erkannt.
Fehlermeldung: "Projekt oder Bibliothek nicht auffindbar".
Oder in einer Abfrage kommt z.B. bei Funktionen wie Links, Mid die Fehlermeldung:
"Funktion steht in Ausdrücken nicht zur Verfügung..."

U r s a c h e
Bug. Bibliotheks-Verweise wurden "verloren".

L ö s u n g
Irgendein Modul öffnen, Menü: Extras/Verweise wählen.
Standardmäßig sollten dort eingestellt sein:

In A97:
Visual Basic for Applications
Microsoft Access 8.0 Object Library
Microsoft DAO 3.5 Object Library

In A00:
Visual Basic for Applications
Microsoft Access 9.0 Object Library
Microsoft DAO 3.6 Object Library
bei Verwendung von ADO auch: Microsoft ActiveX Data Objects 2.1 Library (s. a. FAQ 7.11)

Bei Fehleranzeigen z.B. "nicht vorhanden" den Verweis wegklicken oder bei Bedarf die entsprechende Bibliothek nachinstallieren. Auch wenn kein fehlender Verweis angezeigt wird, erstmal alle Verweise, bei denen das geht, wegklicken und neu setzen.

Info und Code zum Checken der Verweise von MS: http://www.microsoft.com/IntlKB/Germany/Support/kb/D36/D36818.htm
Verweis-Checker von Terry Kreft: http://www.mvps.org/access/modules/mdl0022.htm

Wenn das alles nix hilft, neue mdb erstellen und alle Objekte in diese importieren.
Manchmal hilft auch das Aufrufen des Office-Setups mit: Setup/Y


Gruß, Dietmar

Karstenlu
11.08.2001, 12:01
habe ich schon probiert, hat nicht geklappt,
vielleicht muss ich etwas grundsätzlich anders machen

karsten