Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Access und Excel Problem

Begonnen von ChrisBer, Dezember 13, 2012, 21:45:10

⏪ vorheriges - nächstes ⏩

ChrisBer

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?

C4RL0

#1
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
_____________________________
Gruß
Carlo

ChrisBer

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??