Thema Datum  Von Nutzer Rating
Antwort
Rot Access Export von Datenpaketen in einer Schleife nach Excel
05.02.2017 10:23:42 Martin Mayrhofer
Solved

Ansicht des Beitrags:
Von:
Martin Mayrhofer
Datum:
05.02.2017 10:23:42
Views:
894
Rating: Antwort:
 Nein
Thema:
Access Export von Datenpaketen in einer Schleife nach Excel

Hallo,

ich bräuchte Hilfe bei einer Schleife in Access. Für jede Hilfe bin ich sehr dankbar. 

Es ist meine erste Schleife die ich erstellt habe.

Folgende Aufgabenstellung habe ich. Ich möchte Daten aus Access nach Excel exportieren. In Excel startet ein Makro welches die Daten überprüft. Derzeit wird jeder Datensatz einzeln nach Excel exportiert. In excel  wird jeder Datensatz derzeit überprüft und dann wieder von Access überschrieben. Ich möchte es jetzt schaffen, dass Access den Export nicht bei jedem Datensatz macht, sondern z.b.: 10 Datensätze auf einmal exportiert, danach wieder die Export Tabelle in Access löscht und die nächsten 10 Datensätze exportiert bis das Ende der Abfrage erreicht ist.

 

Hier mein derzeitiger Code

Private Sub Befehl256_Click()

'Schleife'

Dim db As DAO.Database
Dim rst As DAO.Recordset2
Dim xlApp As Object
Dim xlWb As Object

Set db = CurrentDb
Set rst = db.OpenRecordset("Abfrage Verr_Blöcke")

    ' Tabelle Tabelle1 wird gelöscht!
    CurrentDb.Execute "Delete from [Tabelle1]", dbFailOnError

Do While Not rst.EOF

'neuen Datensatz in Tabelle1 schreiben
With CurrentDb().OpenRecordset("Tabelle1", dbOpenDynaset, dbAppendOnly)
.AddNew
!Test = rst!POSITION
.Update
End With
    
    Debug.Print rst!POSITION
    
  
    Set xlApp = CreateObject("Excel.Application") ' Excel öffnen
    xlApp.DisplayAlerts = False ' Warnungen deaktivieren
    Set xlWb = xlApp.Workbooks.Open(Application.CurrentProject.Path & "\Import_Export_UPRO.xlsm")
    
                  
    xlWb.Sheets("Tabelle1").Range("A2:A500").ClearContents 'In Spalte A Zeile2 bis Zeile 500 löschen
    
    
    xlWb.Save  'Excelmappe speichern
    xlWb.Close 'Excelmappe schließen
    xlApp.Quit 'Excel beenden


    ' Export der Daten in Excel!

DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "Tabelle1", _
Application.CurrentProject.Path & "\Import_Export_UPRO.xlsm"


CurrentDb.Execute "Delete from [Tabelle1]", dbFailOnError
        
    rst.MoveNext
    Loop

rst.Close
Set rst = Nothing
Set db = Nothing

End Sub



 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Access Export von Datenpaketen in einer Schleife nach Excel
05.02.2017 10:23:42 Martin Mayrhofer
Solved