Aus Access Tabelle in bestehende Tabelle Excel an eine bestimmte Mappe Werte übergeben
Hallo,
ich komme hier an einer Stelle nicht weiter.
Wie ist es möglich aus einer Access Tabelle gewisse Spalten in eine Bestehende Excel Tabelle ( hier ein bestimmtes ) Tabellenblatt zu übergeben?
z.b. Access test.accdb Tabelle Test -> Spalte Testwerte
soll nach c:\temp\test.xmsl in das Tabellenblatt Test2 A1 übergeben werden,
im Vorfeld soll das Tabellenblatt geleert werden .
Es soll keine neue Excel Tabelle erzeugt werden sondern nur eine bestehende verändert werden.
Besteht hier eine Möglichkeit dieses per VBA umzusetzen?
Grüße aus München
ich komme hier an einer Stelle nicht weiter.
Wie ist es möglich aus einer Access Tabelle gewisse Spalten in eine Bestehende Excel Tabelle ( hier ein bestimmtes ) Tabellenblatt zu übergeben?
z.b. Access test.accdb Tabelle Test -> Spalte Testwerte
soll nach c:\temp\test.xmsl in das Tabellenblatt Test2 A1 übergeben werden,
im Vorfeld soll das Tabellenblatt geleert werden .
Es soll keine neue Excel Tabelle erzeugt werden sondern nur eine bestehende verändert werden.
Besteht hier eine Möglichkeit dieses per VBA umzusetzen?
Grüße aus München
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 281109
Url: https://administrator.de/forum/aus-access-tabelle-in-bestehende-tabelle-excel-an-eine-bestimmte-mappe-werte-uebergeben-281109.html
Ausgedruckt am: 23.12.2024 um 01:12 Uhr
2 Kommentare
Neuester Kommentar
Hallo Thomas1972,
kein Problem, wenn du aus Access heraus mit VBA arbeitest sieht das anhand deiner genannten Namen und Daten so aus:
(Weitere Kommentare siehe Code)
Anders herum, also aus Excel heraus geht natürlich auch wenn man möchte, dann musst du das ganze nur umdrehen und anstatt der Erzeugung eines Excel-Objekts eben ein Access-Objekt erstellen die DB öffnen und das Recordset erstellen. Die Übertragung des Recordset ist dann analog zu obigem Beispiel in Zeile 14.
Grüße Uwe
kein Problem, wenn du aus Access heraus mit VBA arbeitest sieht das anhand deiner genannten Namen und Daten so aus:
(Weitere Kommentare siehe Code)
Sub ExportColumnToExcel()
Dim rec As Recordset, objExcel As Object, wb as Object
'Recordset via SQL Query erstellen
Set rec = CurrentDb.OpenRecordset("SELECT Testwerte FROM Test")
'Excel öffnen
Set objExcel = CreateObject("Excel.Application")
'Workbook öffnen
Set wb = objExcel.Workbooks.Open("C:\Temp\Test.xlsm")
'Daten in Worksheet importieren
With wb.Sheets("Test2")
'Existierende Daten im Sheet löschen
.UsedRange.ClearContents
'Recordset übertragen
.Range("A1").CopyFromRecordset rec
End With
'Excel anzeigen
objExcel.Visible = True
set rec = Nothing
End Sub
Grüße Uwe