Hallo Leute!
Ich hänge an einem Problem mit Excel. In Access per vba oder wizard eine Tabelle in Excel schreiben ist ja recht einfach.
Bei mir jedoch verkomplizert sich alles etwas:
Ich habe eine Excel Datei mit ca. 8000 Zeilen auf 7 Spalten. Alle Zeilen sind durchnummeriert.
Nun habe ich eine db, bei welcher die Feldernamen identisch sind mit den Spaltennamen zu denen in Excel.
Wenn ich nun per Formular einen Datensatz hinzufügen will zu einer Exceldatei geht dies aus, allerdings habe ich noch nicht herausgefunden wie ich die erste Freie Zeile per vba finden kann und dort jeder Zelle in der Zeile einen Wert auf einem Textfeld des Accessformulares zuorden kann.
Jemand eine Idee?
Also Frage konkret: Wie finde ich in Access per VBA die erste freie Zeile in einer Exceltabelle und übertrage an diese die zuvor eingegeben Werte meines Accessformulares?
Beschreibst Du Excel denn per SQL oder per Datenübergabe an das Objekt? Speziell bei letzterem sollte Dir das folgende als Hilfe dienen:
Private Function GetLastRowFromExcel(ByRef Pfad As String, _
ByRef Tabelle As String, _
ByRef Spalte As Integer) As Long
Dim oAppXL As Excel.Application
Dim lLastRow As Long
Set oAppXL = CreateObject("Excel.Application")
With oAppXL
.Workbooks.Open Pfad
With .Sheets(Tabelle)
.Select
lLastRow = .Cells(Rows.Count, Spalte).End(xlUp).Row
End With
.Workbooks.Close
End With
Set oAppXL = Nothing
GetLastRowFromExcel = lLastRow
End Function
Private Sub test()
MsgBox GetLastRowFromExcel("C:\Mappe1.xls", "Tabelle2", 1)
End Sub
Danke für den Tipp!
Ich habe einen anderen Ansatz versucht der wie ich finde recht zielführend ist.
Da alle Daten in der Exceldatei gleich sind mit der Datenbank, exportiere ich nach jedem anlegevorgang einfach eine neue xls und überschreibe die alte, damit geht es auch gut.
Damit dies jetzt beidseitig fuktionioert, also änderungen in excel auch in der datenbank übernommen werden, habe ich nun eine verknüpfte tabelle erstellt.
Da ich auf dem Zielsystem allerdings kein volles access sondern nur die runtime zur verfügung habe, wollte ich fragen ob man die verknpüfte xls datei mit einer tabelle auch per formular bestimmen kann??