Hallo zusammen,
ich benutze WIN7, Excel2007 und Access2007.
Mit VBA in Excel greife ich auf eine Access DB zu:
Sub DBtest()
Dim objADODBConn, objRecordSet As Object
Dim strDBTabelle, strDBName As String
strDBName = "C:\TEST.accdb"
strDBTabelle = "Feld1"
'Verbindung zur Datenbank
Set objADODBConn = CreateObject("ADODB.Connection") 'LateBinding daher ohne Verweis
With objADODBConn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.Properties("Persist Security Info") = "False"
.Properties("Data Source") = strDBName
.Open
End With
'RecordSet öffnen
Set objRecordSet = CreateObject("ADODB.RecordSet") 'LateBinding daher ohne Verweis
With objRecordSet
.CursorLocation = 3 'adUseClient
.CursorType = 2 'adOpenDynamic
.LockType = 3 'adLockOptimistic
.Open strDBTabelle, objADODBConn
.Filter = "ID=1"
End With
'Daten in DB schreiben
If Not objRecordSet.EOF Then
objRecordSet.Fields("Name") = "TestName"
objRecordSet.Update
End If
'DB schließen
objRecordSet.Close
objADODBConn.Close
Set objRecordSet = Nothing
Set objADODBConn = Nothing
End Sub
Jetzt will ich einen neuen Datensatz anlegen bzw einen Datensatz löschen.
Wie könnte der Code aussehen?
Vielen Dank im Voraus
AbsolutBeginner
ich benutze WIN7, Excel2007 und Access2007.
Mit VBA in Excel greife ich auf eine Access DB zu:
Sub DBtest()
Dim objADODBConn, objRecordSet As Object
Dim strDBTabelle, strDBName As String
strDBName = "C:\TEST.accdb"
strDBTabelle = "Feld1"
'Verbindung zur Datenbank
Set objADODBConn = CreateObject("ADODB.Connection") 'LateBinding daher ohne Verweis
With objADODBConn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.Properties("Persist Security Info") = "False"
.Properties("Data Source") = strDBName
.Open
End With
'RecordSet öffnen
Set objRecordSet = CreateObject("ADODB.RecordSet") 'LateBinding daher ohne Verweis
With objRecordSet
.CursorLocation = 3 'adUseClient
.CursorType = 2 'adOpenDynamic
.LockType = 3 'adLockOptimistic
.Open strDBTabelle, objADODBConn
.Filter = "ID=1"
End With
'Daten in DB schreiben
If Not objRecordSet.EOF Then
objRecordSet.Fields("Name") = "TestName"
objRecordSet.Update
End If
'DB schließen
objRecordSet.Close
objADODBConn.Close
Set objRecordSet = Nothing
Set objADODBConn = Nothing
End Sub
Jetzt will ich einen neuen Datensatz anlegen bzw einen Datensatz löschen.
Wie könnte der Code aussehen?
Vielen Dank im Voraus
AbsolutBeginner