Office: (Office 2019) VBA Code Daten aus anderer Tabelle holen klappt nicht

Helfe beim Thema VBA Code Daten aus anderer Tabelle holen klappt nicht in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Zusammen, Ich habe einen VBA Code, welcher mir automatisch Daten aus einer anderen geschlossenen Tabelle holt. Dieser funktioniert einwandfrei... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von schubste, 28. Januar 2023.

  1. schubste Neuer User

    VBA Code Daten aus anderer Tabelle holen klappt nicht


    Hallo Zusammen,

    Ich habe einen VBA Code, welcher mir automatisch Daten aus einer anderen geschlossenen Tabelle holt. Dieser funktioniert einwandfrei in einer schon länger genutzten Tabelle. Nun habe ich eine weitere Tabelle, mit der ich ebenfalls diese Daten abholen möchte. Dafür habe ich den VBA Code in ein Modul gepackt und bereits gewisse Vorgaben, wie Range und Sheetnamen angepasst. Voller Vorfreude auf die gleich auftauchende Daten wollte ich das Makro mit F8 durchlaufen lassen. Leider ohne Erfolg. Die erste Anweisung ist das Aufheben eines Passwortes. Diese wird komplett übersprungen und er stoppt beim Deklarieren der Variablen ( Dim Connection As New ADODB.Connection) mit der Meldung "Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert". Ich komme einfach nicht drauf, wo mein Fehler liegt. Die Pfade passen und und auch die Range ist definiert, aber bis dahin kommt er ja gar nicht. Hat jemand eventuell eine Idee?

    Hier der Code
    Code:
    Sub Daten()
    
    'Passwort entfernen
    Sheets("Daten").Unprotect Password:="ts"
    
    'Variablen Deklarieren
    Dim Connection As New ADODB.Connection
    Dim Query As String
    Dim rs As New ADODB.Recordset
    
    'Connection herstellen
    Connection.Open "Provider=MSDASQL.1;DSN=Excel Files;DBQ=C:\Users\schub\Desktop\Tagesquittungen\Daten.xlsm;HDR=Yes';"
    
    'Query definieren und ausführen
    Query = "SELECT * FROM [Daten$B2:F103]"
    rs.Open Query, Connection
    
    'Daten ins Tabellenblatt laden
    Tabelle1.Range("B3").CopyFromRecordset rs
    
    'Connection schließen
    Connection.Close
    
    'Passwort setzen
    Sheets("Daten").Protect Password:="ts"
    
    
    End Sub
    Packe noch einen Screenshot, von der Meldung bei. Herzlichen Dank für eure Hilfe.
     
    schubste, 28. Januar 2023
    #1
  2. PIVPQ hat Ahnung
    Hallo

    Bei mir klappt das Daten holen ohne Probleme ohne VBA mit Power Query.
     
  3. schubste Neuer User
    Da bin leider nicht so ein Held, was das Thema angeht. VBA Code Daten aus anderer Tabelle holen klappt nicht :cool: Lädt Power Query die Daten automatisch aus geschlossenen Tabellen ab, oder muss man das anstoßen? Mein VBA Makro wird beim öffner der Tabelle automatisch und ohne Eingriff ausgeführt und so muss es auch sein. Wie gesagt, mein Code oben funktioniert prima in einer anderen Tabelle.
     
    Zuletzt bearbeitet: 28. Januar 2023
    schubste, 28. Januar 2023
    #3
  4. PIVPQ hat Ahnung

    VBA Code Daten aus anderer Tabelle holen klappt nicht

    Hallo

    Wenn du möchtest das ich dir weiter helfe, dann Datei die dem Original im Aufbau entspricht und dein Wunschergebnis.
     
    1 Person gefällt das.
  5. schubste Neuer User
    Gerne und Danke. Hier ist eine Datei mit dem Namen "Daten". Darin befinden sich die Daten, die mit dem Makro, (welches in Tabelle "Test" ausgeführt werden muss), in die Tabelle "Test" übertragen werden soll. Musst lediglich noch den Pfad zur Datei "Daten" im Makro ändern. Wenn du mich nach meinem Wunschergebnis fragst, müssen einfach alle Daten in der Datei "Test" ankommen. Falls es für dich ein leichtes ist, sollen beim Übertragen allerdings noch zwei Spalten getauscht werden. Das kann ich leider in den Ursprungsdaten nicht tun, da eben noch andere Tabellen dort die Daten in dieser Reihenfolge benötigen und abholen. In meiner Datei "Test" benötige ich die Spalten C und D vertauscht. (Name, Vorname, Steuernummer, Stadt). Das nur, weil du nach meinem Wunschergebnis gefragt hast. VBA Code Daten aus anderer Tabelle holen klappt nicht *:)*

    Hier nochmal der VBA Code für die "Test" Datei:
    Code:
    Sub Daten_holen()
    
    'Variablen Deklarieren
    Dim Connection As New ADODB.Connection
    Dim Query As String
    Dim rs As New ADODB.Recordset
    
    'Connection herstellen
    Connection.Open "Provider=MSDASQL.1;DSN=Excel Files;DBQ=C:\Dein_Pfad\Daten.xlsx;HDR=Yes';"
    
    'Query definieren und ausführen
    Query = "SELECT * FROM [Daten$A1:D10]"
    rs.Open Query, Connection
    
    'Daten ins Tabellenblatt laden
    Tabelle1.Range("A1").CopyFromRecordset rs
    
    'Connection schließen
    Connection.Close
    
    End Sub
    Dateien siehe Anhang.

    Herzlichen Dank für deine Hilfe.
     
    schubste, 28. Januar 2023
    #5
  6. PIVPQ hat Ahnung
    Hallo
    Habe dir eine Mail geschickt, nicht angekommen?
     
  7. schubste Neuer User
    Vielen Dank für deine Antwort. Gerade bemerkt, dass ich eine Email habe. Es ist halt so, dass ich die Daten nicht in das Beispiel kopieren kann. Mit der Tabelle, wo die Daten landen sollen, arbeiten andere Personen, die sich nicht wirklich auskennen. Da ist es leider schon zu viel verlangt, wenn sie manuell aktualisieren müssen. Im Endeffekt landen diese Daten in einer Tabelle, wo manuell weitere Kriterien pro Position erfasst werden um im Nachgang einen automatischen Quittungsdruck per Serienbrief anzustoßen. Im Endeffekt soll die Tabelle geöffnet werden und die Kundendaten müssen sich automatisch aktualisieren. Daher hatte ich mir genau den VBA Code herausgesucht, der ja auch in einer anderen Tabelle ohne Probleme die Daten aktualisiert. Die Frage ist nur, warum das eben mit anderen Tabellen nicht funktioniert.
     
    schubste, 28. Januar 2023
    #7
  8. PIVPQ hat Ahnung

    VBA Code Daten aus anderer Tabelle holen klappt nicht

    Hallo
    Die PQ kann auch einstellen das sie automatisch Aktualisiert werden, entweder per VBA oder intern von PQ.
    Man auch die ganzen Daten von den anderen zusammenfassen und bearbeiten ist auch kein Problem.
     
  9. Exl121150 Erfahrener User
    Hallo,

    dann hast du die entsprechende Library nicht aktiviert - unter Tab "Extras" > "Verweise..." >
    VBA Code Daten aus anderer Tabelle holen klappt nicht upload_2023-1-29_14-38-45.png
    Den markierten Eintrag in der Liste "Verfügbare Verweise:" suchen und anhaken
    Wenn du dann im VBA-Code eingibst: Dim Connection As New ADODB.
    erscheint nach Eingeben des Punktes sofort die Liste der enthaltenen Objekte - ein Zeichen, dass die Bibliothek aktiviert ist.
     
    Exl121150, 29. Januar 2023
    #9
    1 Person gefällt das.
  10. schubste Neuer User
    das würde ich sehr gerne ausprobieren, aber leider finde ich bei meinen Excel 2019 den Tab "Extras" nicht. VBA Code Daten aus anderer Tabelle holen klappt nicht :(
     
    schubste, 1. Februar 2023
    #10
  11. schubste Neuer User
    Ah, hab es gefunden und angehakt. Ich bin allerdings in der Zwischenzeit auf eine PowerQuery Abfrage umgestiegen und habe zur Abfrage den folgenden VBA Code eingefügt. Dort hängt er sich jetzt bei "Dim DatenVerbindung As WorkbookConnection auf" Muss ich dafür bei den verfügbaren Verweisen noch weiteres dort aktivieren? Herzlichen Dank für eine Antwort.
    Code:
    Sub Daten_auffrischen()
    
    Dim SucheVerbindung As Long
    Dim DatenVerbindung As WorkbookConection
    
        On Error Resume Next
     
        For Each DatenVerbindung In ThisWorkbook.Connections
            SucheVerbindung = InStr(1, DatenVerbindung.OLEDBConnection, "Provider=Microsoft.Mashup.OleDb.1", vbTextCompare)
        
            If Err.Number <> 0 Then
                Err.Clear
                Exit For
            End If
        
            If SucheVerbindung > 0 Then DatenVerbindung.Refresh
        
        Next DatenVerbindung
        
    End Sub
     
    Zuletzt bearbeitet: 1. Februar 2023
    schubste, 1. Februar 2023
    #11
  12. schubste Neuer User
    Das hast sich erledigt, da ich zur alten und hier ursprünglich beschriebenen Variante zurück gewechselt bin. Es ist jetzt alles so, wie es sein soll. Herzlichen Dank für eure Hilfe.
     
    schubste, 2. Februar 2023
    #12
  13. Exl121150 Erfahrener User

    VBA Code Daten aus anderer Tabelle holen klappt nicht

    Hallo,

    die Deklaration muss lauten:
    Dim DatenVerbindung As WorkbookConnection
     
    Exl121150, 2. Februar 2023
    #13
    1 Person gefällt das.
Thema:

VBA Code Daten aus anderer Tabelle holen klappt nicht

Die Seite wird geladen...
  1. VBA Code Daten aus anderer Tabelle holen klappt nicht - Similar Threads - VBA Code Daten

  2. VBA-Code in kopierter Mappe wird in Originalmappe ausgeführt

    in Microsoft Excel Hilfe
    VBA-Code in kopierter Mappe wird in Originalmappe ausgeführt: Hallo Ich erstelle mir einen Jahreskalender, indem ich die Originaldatei kopiere, alle Einträge in der Kopie lösche und den Kalender incl. Feiertage neu erstelle. Das passiert komplett mittels...
  3. Im Formular mit VBA-Code in Datensätzen blättern

    in Microsoft Access Hilfe
    Im Formular mit VBA-Code in Datensätzen blättern: Hallo Forum, wie kann ich in einem Formular mit VBA-Code nach Datensätzen blättern ? ich möchte in einem numerischen Feld den ersten Datensatz finden, in dem das Feld leer ist. Wie sieht eine...
  4. VBA QRCode löschen

    in Microsoft Excel Hilfe
    VBA QRCode löschen: Hallo zusammen, ich habe einen QR-Code über VBA erzeugt und möchte, dass wenn die Zeile aus der der QR-Code erzeugt werden soll leer ist, das auch kein QR-Code erzeugt werden soll. Function...
  5. Verknüpfungen zu Passwort-geschützter Quelle aktualisieren

    in Microsoft Excel Hilfe
    Verknüpfungen zu Passwort-geschützter Quelle aktualisieren: Hallo, ich möchte das Verknüpfung-Aktualisierungen im Hintergrund mit automatischer Passworteingabe beim öffnen der Datei durchgeführt werden. Ich habe im Internet nur alte Cods gefunden für VBA...
  6. VBA - Zeilen je nach Bedingung in neues Tabellenblatt verschieben und löschen

    in Microsoft Excel Hilfe
    VBA - Zeilen je nach Bedingung in neues Tabellenblatt verschieben und löschen: Hallo liebe Excel-Kommunity, nach ewigen Stunden des Suchens und Rumprobierens bin ich an dem Punkt angekommen an dem ich verzweifelt um eure Hilfe fragen muss. Da ich leider keinerlei...
  7. Access VBA/DAO-Code kann abstürzen oder fehlerhafte Daten für Dezimal-Spalten melden

    in Microsoft Access Tutorials
    Access VBA/DAO-Code kann abstürzen oder fehlerhafte Daten für Dezimal-Spalten melden: Access VBA/DAO-Code kann abstürzen oder fehlerhafte Daten für Dezimal-Spalten melden Access für Microsoft 365 Mehr... Weniger...
  8. Suche Hilfe beim VBA Code zum Daten übertragen

    in Microsoft Excel Hilfe
    Suche Hilfe beim VBA Code zum Daten übertragen: Hallo Leute, ich habe ein code um Daten von einem Tabellenblatt "Material & Kosten" in dieses tabellenblatt "Angebot" zu übertragen. Alles funktioniert Tadellos. Die Eintragungen sollen...
  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