Office: (Office 2016) VBA ADO - mehrere Einträge in Recordset mit einmal in DB schreiben

Helfe beim Thema VBA ADO - mehrere Einträge in Recordset mit einmal in DB schreiben in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, (bin Recordset Anfänger) wie im Titel schon steht möchte ich ein gesamtes Recordset mit mehrern Einträgen in eine DB sschreiben,... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Tauchmann, 18. Mai 2019.

  1. Tauchmann Erfahrener User

    VBA ADO - mehrere Einträge in Recordset mit einmal in DB schreiben


    Hallo zusammen, (bin Recordset Anfänger)

    wie im Titel schon steht möchte ich ein gesamtes Recordset mit mehrern Einträgen in eine DB sschreiben, damit man sich das zeilenweise in DB schreiben sparen kann.

    zu 1)
    Kann man in einem Recordset genauso durchsuchen und bestehende Einträge ändern wie in einem Array???

    zu 2)
    Aktuell generiere ich viel 1000de Zielen in einem Array die in eine DB geschrieben werden sollen.
    Nun habe ich überlegt das Array mit einem Recorset auszutauschen, damit "quasi" gleich das Paket für die DB fertig ist.

    Nun wollte ich fragen ob es möglich ist ein Recordset mit mehrern Einträgen in einem Rutsch in eine DB zu schrieben und sich eine Schleife, die sich durch jede Zeile quält, ersparen kann? Wenn ja, hättet ich ein Codebeispiel?


    Hier mein Testcode. Leider wird hier nur eine Zeile ins SQL geschrieben.
    Kann man ein gesamtes Recordset in eine DB schreiben ????
    Code:
    
    Option Explicit
    
    Sub WriteInDb()
    
    'Variablen deklarien
        Dim adoDbConnection As ADODB.Connection
        Dim adoDbRecordSet As ADODB.Recordset
        Dim strConnectionString As String
        Dim test As Variant
        
        Dim strSqlStatement As String
        Dim i As Integer
    
    'Initialisieren
        Set adoDbConnection = New ADODB.Connection
        Set adoDbRecordSet = New ADODB.Recordset
        
    'Verbindungsstring einrrichten
        strConnectionString = _
            "Provider=MSDASQL;" & _
            "Driver=MySQL ODBC 8.0 Unicode Driver;" & _
            "Server==.........;" & _
            "Database=.........;" & _
            "Uid=.........;" & _
            "Pwd=........."
             
        adoDbConnection.ConnectionString = strConnectionString
    
    'Wert in DB schreiben
        i = 3
        With ActiveSheet
            strSqlStatement = _
                "INSERT INTO test.dummy (id, vorname, nachname)" & _
                "VALUES (""" & .Cells(i, 1) & """, """ & .Cells(i, 2) & """, """ & .Cells(i, 3) & """);"
        End With
    
        With adoDbRecordSet
            .Source = strSqlStatement
            .ActiveConnection = adoDbConnection
            .CursorType = adOpenDynamic
            .Open
        End With
    
    'Close stuff
        adoDbConnection.Close
        
        Set adoDbConnection = Nothing
        Set adoDbRecordSet = Nothing
    
    End Sub
    
    
     
    Tauchmann, 18. Mai 2019
    #1
Thema:

VBA ADO - mehrere Einträge in Recordset mit einmal in DB schreiben

Die Seite wird geladen...
  1. VBA ADO - mehrere Einträge in Recordset mit einmal in DB schreiben - Similar Threads - VBA ADO Einträge

  2. Kamera in Excel einbinden und per vba Fotos erstellen

    in Microsoft Excel Hilfe
    Kamera in Excel einbinden und per vba Fotos erstellen: Kamera in Excel einbinden Hallo, ich suche einen Code für eine UserForm, mit der ich die integrierte Kamera des WinPC in der UserForm anzeigen lassen kann und davon ein Bild sichern kann.
  3. Liste aller Comboboxen im Sheet

    in Microsoft Excel Hilfe
    Liste aller Comboboxen im Sheet: Hallo allerseits, Ich möchte alle Comboboxen eines Worksheets mit VBA auslesen und finde nicht den Namen der Liste in den Sheet-Eigenschaften, in der die Comboboxen gespeichert sind. Wer weiß, wo...
  4. Pivot Tabelle: Quelle per VBA verändern

    in Microsoft Excel Hilfe
    Pivot Tabelle: Quelle per VBA verändern: Hi all, gibt es eine Möglichkeit, wie ich die Quelle einer Pivot Tabelle mit einem Klick aktualisieren kann? 1) Beispiel Quelle: [Datum_Dateiname.xlsx]Tabelle1!$A:$AA 2) Beispiel wie es je nach...
  5. Auswertung aus mehreren Registern erstellen (nur die Gelbmarkierten oder mit Datum von akt. Woche)

    in Microsoft Excel Hilfe
    Auswertung aus mehreren Registern erstellen (nur die Gelbmarkierten oder mit Datum von akt. Woche): Hallo zusammen, ich arbeite mit einer Excel-Arbeitsmappe, die mehrere Tabellenblätter enthält. Jedes Blatt dokumentiert bestimmte Vorgänge, und die Struktur der Daten ist in allen Blättern...
  6. VBA in einer Zeile zu lang

    in Microsoft Excel Hilfe
    VBA in einer Zeile zu lang: Moin, mein VBA Code ist für eine Zeile zu lang. Kann mir einer helfen wie ich den auf 2 Zeilen aufteilen Kann? arrSchuhDaten = Array(Range("A6"), Range("F6"), Range("J6"), Range("A7"),...
  7. Verweis auf ADO per VBA erstellen

    in Microsoft Excel Hilfe
    Verweis auf ADO per VBA erstellen: Hallo, ich möchte per VBA einen Verweis auf die Microsoft ActiveX Data Objects 2.8 Library setzen (also das manuelle Setzen über Extras > Verweise automatisieren). Hintergrund: Es soll möglich...
  8. Access VBA-Modul: aktuelle Datenbank mit ADO ansprechen

    in Microsoft Access Hilfe
    Access VBA-Modul: aktuelle Datenbank mit ADO ansprechen: Hallo zusammen! Ich habe eine mit Access erstellte Datenbank, in die ich ein Modul eingefügt habe. In dem Modul wird mit ADO auf die Datenbank zugegriffen. Set adoCN1 = New ADODB.Connection...
Schlagworte:
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden