Hallo Zusammen,
erst - Entschuldigung für die Fehler, ich bin keine Muttersprachlerin.
Ich habe ein Problem, ich muss ein Datenbank von Access in Excel automatisch übertragen. Ich habe schon Code geschrieben und es hat prima funktioniert - leider war der Datenbank zu groß, also nicht alle Daten könnten übertragen werden (bis 1048576, also das Maximum in Excel). Ich habe mir Gedanken gemacht und festgelegt, dass ich eigentlich nicht alle Daten brauche - ich würde gern von der Tabelle in Access (mit Überschriften "Bau", "Datum", "Ort", "Menge") nur die Daten, die "Bau" gleich "AB200", "CJ200" und "HZ100" beinhalten. Ich glaube das Problem ist nicht super komplex, aber ich habe schon ein paar Sachen veruscht und ich kenne die Lösung nicht. Kann jemand mir helfen?
Vielen Dank im Voraus!
Hier noch Mal mein Code:
Sub Aktualisieren()
On Error GoTo SubError
Const DbLoc As String = "C:\D051\PS-K\V5\16_Team\DA_DS Access Vorlage_7.4.accdb"
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim xlBook As Workbook
Dim xlSheet As Worksheet
Dim recCount As Long
Dim SQL As String
Set xlBook = ActiveWorkbook
Set xlSheet = xlBook.Worksheets(6)
xlSheet.Range("A2:D150000").ClearContents
Set db = OpenDatabase(DbLoc)
SQL = "SELECT Bau, Datum, Ort, Menge"
SQL = SQL & "FROM Bau"
SQL = SQL & "WHERE Bau IN (1, 2) "
SQL = SQL & "ORDER BY Datum, Ort, Menge"
Set rs = db.OpenRecordset("vw_Mengen_je_Bau", dbOpenSnapshot)
Application.StatusBar = "Warten…”
If rs.RecordCount = 0 Then
MsgBox "Keine Daten vorhanden", vbInformation + vbOKOnly, "Keine Daten"
GoTo SubExit
Else
rs.MoveLast
recCount = rs.RecordCount
rs.MoveFirst
End If
End Sub
|