Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1920to1924
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA ADODB kopiert nicht alles

VBA ADODB kopiert nicht alles
06.03.2023 19:42:42
Script
Hallo, ich bin wie der Name schon sagt ein ziemliches ScriptKid im Bereich VBA. Durch häufiges kopieren von den immer gleichen Daten bin ich dann schnell auf ADODB gekommen. Lange Rede gar kein Sinn, bisher konnte ich noch alles selbst zusammen scripten und es lief auch immer. Jetzt komme ich leider an meine Grenzen.
Ich versuche quasi eine Zeile zu kopieren, die zu Kopierenden Daten gehen von B11:JW11, da sich das ggf nochmal erweitert habe ich hier bereits die Formel etwas großzügiger angegeben (daran liegt es aber nicht). Leider endet das einfügen der Daten in Zelle IW26, und zwar jedes mal. Passe ich den zu kopierenden Bereich und auch die Zielzelle entsprechend an werden die Daten aber ab IW26 bis zu JW26 perfekt eingefügt. Ich könnte jetzt natürlich einfach 2 Makros mit den beiden Bereichen erstellen und alles wäre gut (wahrscheinlich wirds darauf hinauslaufen). Ich würde aber schon gerne wissen, was dieses Problem auslöst.
An der Datenmenge kann es unmöglich liegen. Anzahl Spalten dürfte da doch auch keine Rolle spielen. Also wo ist mein Code falsch?
Erklärungen: In Zelle H8 steht selbstverständlich wie beim Testversuch B26 als Zielzelle.

Sub Daten_Kopieren()
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
    Dim cn As ADODB.Connection
    Dim rs As ADODB.Recordset
    
    Set cn = New ADODB.Connection
    
    cn.ConnectionString = _
        "Provider=Microsoft.ACE.OLEDB.12.0;" & _
        "Data Source=" & "C:\Users\würdestduwohlgernewissen" & _
        "Daten\" & Range("D8") & "\" & Range("E8") & "\" & Range("F8") & ".xlsm;" & _
        "Extended Properties='Excel 12.0 Macro';"
    cn.Open
    
    Set rs = New ADODB.Recordset
    
    rs.ActiveConnection = cn
    rs.Source = "SELECT * FROM [Daten$B11:JZ12]"
    rs.Open
    
    Application.Calculation = xlCalculationAutomatic
    
    ActiveSheet.Range("B26").CopyFromRecordset rs
    'ActiveSheet.Range(Range("H8")).CopyFromRecordset rs
    
    rs.Close
    cn.Close
    
    ActiveSheet.Range("A:JZ").CurrentRegion.EntireColumn.AutoFit
Application.ScreenUpdating = True
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA ADODB kopiert nicht alles
07.03.2023 07:04:24
Luschi
Hallo Script Kidd,
ADODB hat eine maximale Spaltenanzahl von 255! - von Spalte 'B' an gerechnet ist das Spalte 'IV' - mehr geht in 1 Rutsch einfach nicht.
Gruß von Luschi
aus klein-Paris
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige