kein Verweis - keine Bibliothek

gingerswelt

Mitglied
Hallo zusammen,

ich versuche seit Stunden eine einfache Datenbankanbindung mit VBasic
zu realisieren. Das kann doch nicht so schwer sein.
Dennoch bekomme ich stets die Fehlermeldung 'Benutzerdefinierter Typ nicht definiert'.

Mein Skript.
Code:
Sub combineTable()

Dim db As DAO.Database
Dim dy As DAO.Recordset

'Datenbank öffnen, Variable für Record definieren

'hier ein fiktiver Pfad!
Set db = DBEngine.Workspaces(0).OpenDatabase("C:\Dokumente und Einstellungen\ginger\Desktop\test.mdb")

'Recordset zur Tabelle "x1" öffnen
Set dy = db.OpenRecordset("x1", dbOpenDynaset)

'Änderungen ankündigen
dy.Edit

'gewünschten Satz wählen, hier den letzten
dy.MoveLast

'veränderten Datumswert angeben
dy.Fields("Feld2").Value = Michelangelo

'Werte sichern (in Datenbank schreiben)
dy.Update

dy.Close

End Sub

Vermutlich kann er das Object DAO.Database nicht finden.
Wenn ich unter Extra/Verweise schaue, so ist Verweise nicht markiert.
Das heißt doch, dass keine Libary eingebunden ist, oder?

Nun dafür habe ich folgendes Script eingebunden:

Code:
Function VerweiseLesen()
Dim fso As New FileSystemObject


On Error Resume Next
Dim verweis As Reference
For Each verweis In Application.References
MsgBox verweis.FullPath
MsgBox fso.GetFileVersion(verweis.FullPath)
If Err.Number <> 0 Then MsgBox verweis.Name: Err.Clear
Next
End Function



Function HinzufügenReferenz() As Boolean
Dim ref As Reference, strDatei As String

On Error GoTo Error_HinzufügenReferenz
strDatei = "C:\Windows\System\Mscal.ocx"
' Verweis auf Kalender-Steuerelement erstellen.
Set ref = References.AddFromFile(strDatei)
HinzufügenReferenz = True

Exit_HinzufügenReferenz:
Exit Function

Error_HinzufügenReferenz:
MsgBox Err & ": " & Err.Description
HinzufügenReferenz = False
Resume Exit_HinzufügenReferenz

End Function

Function EntfernenReferenz() As Boolean
Dim ref As Reference

On Error GoTo Error_EntfernenReferenz
Set ref = References!MSACAL
' Verweis auf Kalender-Steuerelement entfernen.
References.Remove ref
EntfernenReferenz = True

Exit_EntfernenReferenz:
Exit Function

Error_EntfernenReferenz:
MsgBox Err & ": " & Err.Description
EntfernenReferenz = False
Resume Exit_EntfernenReferenz
End Function
'Das folgende Beispiel erstellt einen Verweis auf eine bestimmte Klassenbibliothek:

Function ReferenceFromFile(strDateiname As String) As Boolean
Dim ref As Reference

On Error GoTo Error_ReferenceFromFile
Set ref = References.AddFromFile(strDateiname)
ReferenceFromFile = True

Exit_ReferenceFromFile:
Exit Function

Error_ReferenceFromFile:
MsgBox Err & ": " & Err.Description
ReferenceFromFile = False
Resume Exit_ReferenceFromFile
End Function

'Sie können diese Funktion aufrufen, indem Sie eine Prozedur ähnlich der folgenden verwenden, die einen Verweis auf das Kalender-Steuerelement erstellt:

Sub CreateCalendarReference()

On Error GoTo MyError

Dim db As DAO.Database
Dim strDaten As String
Dim i As Integer

Set db = CurrentDb()

strDaten = Left(db.Name, Len(db.Name) - Len(Dir(db.Name))) & "DeineDaten.mdb"

For i = 0 To db.TableDefs.Count - 1
  If db.TableDefs(i).Connect <> "" Then
    If Mid(db.TableDefs(i).Connect, 11) <> strDaten Then
      db.TableDefs(i).Connect = ";database=" & strDaten
      db.TableDefs(i).RefreshLink
    End If
  End If
Next i

MyExit:
  Exit Sub

MyError:
  MsgBox "Bei der Installation ist eine Ausnahme aufgetreten. ", 16, "Ausnahme"
  Resume MyExit

If ReferenceFromFile("C:\WINDOWS\SYSTEM\MSCAL.OCX") = True Then
MsgBox "Verweis wurde erfolgreich eingestellt."
Else
MsgBox "Verweis konnte nicht eingestellt werden."
End If


End Sub

Führe ich mein Script aus, dann erhalte ich den Fehler, dass 29060: Datei nicht gefunden
bzw. Verweis konnte nicht eingestellt werden.

Trotzdem kann ich dann unter Extra/Verweise eine Liste an Bibliotheken sehen,
wobei ADO vorhanden ist. Führe ich das gleiche Script noch einmal aus, so sind alle Verweise wieder verschwunden.

Was kann ich tun?
 
Zurück