ich habe diverse Daten in Excel vorliegen, die ich in form einer *.mdb Tabelle weiterleiten muss. Da sich der Datensatz regelmäßig ändern kann, würde ich gerne dafür ein Makro haben. Ich bin soweit, die *.mdb erstellen zu können und es wird mir darin eine Tabelle mit dem namen Kontakte angelegt. Er will mir die Daten einfach nicht in die Datenbank schreiben. Egal wie ich es versuche, die Datenbank bleibt immer leer. Folgenden Code habe ich :
Verweis auf Microsoft DAO 3.6 Object Library ist gesetzt.
Private Sub CommandButton3_Click()
Dim Datenbank As Database
Dim Datensatz As Recordset
Dim Tabelle As TableDef
Dim Feld1 As Field
Dim Feld2 As Field
Dim Feld3 As Field
Dim x As Integer
Dim y As Integer
Dim Dateiname As String
Const Tabellenname = "Kontakte"
'Erzeugen der Datenbank und Tabelle
Dateiname = InputBox("Bitte Namen eingeben")
Dateiname = ThisWorkbook.Path & "\Kontaktelisten\" & Dateiname & ".mdb"
On Error Resume Next
'Prüfen, ob Datenbank bereits vorhanden
If Dir(Dateiname) = "" Then
Set Datenbank = CreateDatabase(Dateiname, dbLangGeneral, dbEncrypt) 'Datenbank _
erzeugen
End If
Set Datenbank = OpenDatabase(Dateiname) 'Tabelle erzeugen
Set Tabelle = Datenbank.CreateTableDef(Tabellenname)
'Felder erzeugen Die Namen der Felder werden aus den entsprechenden Zellen geholt
With Tabelle
Set Feld1 = .CreateField(Range("A1"), dbText, 200)
Set Feld2 = .CreateField(Range("B1"), dbText, 200)
Set Feld3 = .CreateField(Range("C1"), dbText, 200)
.Fields.Append Feld1
.Fields.Append Feld2
.Fields.Append Feld3
End With
'Tabelle hinzufügen
Datenbank.TableDefs.Append Tabelle
Set Datensatz = Datenbank.OpenRecordset(Tabellenname)
With Datensatz
For x = 2 To 5 'Zeile 2 bis 5
.AddNew
For y = 1 To 5 'Spalte 1 bis 5
.Fields(tabelle11.Cells(1, y)).Value = Tabelle11.Cells(x, y).Text
Next y
'Datensatz updaten
.Update
.Bookmark = .LastModified
Next x
End With
'Datenbank schließen
Datenbank.Close
End Sub
Wenn mir jemand helfen könnte, wäre echt toll.Gruß
Tim