Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

intelligente Tabelle / Makro kopiert an falsche Stelle

Forumthread: intelligente Tabelle / Makro kopiert an falsche Stelle

intelligente Tabelle / Makro kopiert an falsche Stelle
08.03.2025 21:16:36
Christian
Hallo,

ich bitte mal kurz um eure Hilfe.
Ich habe ein Blatt namens Ergebnis, welches zu Beginn meines Makros bis einschließlich Zeile 682 gefüllt ist.

Als es noch keine intelligente Tabelle war, hat der Code

wsErgebnis.Range("A" & wsErgebnis.Cells(wsErgebnis.Rows.Count, "A").End(xlUp).Row + 1).Resize(letzteZeileMitTT, 1).Value = wsCodes.Range("D1:D" & letzteZeileMitTT).Value

wsErgebnis.Range("D" & wsErgebnis.Cells(wsErgebnis.Rows.Count, "D").End(xlUp).Row + 1).Resize(letzteZeileMitTT, 1).Value = wsCodes.Range("F1:F" & letzteZeileMitTT).Value


beide Bereiche ab Zeile 683 eingefügt. Seit es aber eine intelligente Tabelle ist, erweitert sich diese mit dem Einfügen des ersten Bereichs und die beiden Bereiche werden in nachfolgenden Zeilen, anstatt wie vorher in denselben eingefügt. Hat da jemand eine Idee wie ich das ungehen könnte? Das mit der int. Tab. würd ich schon gerne beibehalten.

Danke
Christian
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: intelligente Tabelle / Makro kopiert an falsche Stelle
08.03.2025 21:33:55
Alwin Weisangler
Hallo,

so was macht man besser mit der Codierung via Listobjects(). Dann ist es egal wo sich dieses Listobjekt (intelligente Tabelle) auf dem Tabellenblatt befindet.
Aber ohne Beispieldatei kann man da nicht viel mehr weiterhelfen.

Gruß Uwe
AW: intelligente Tabelle / Makro kopiert an falsche Stelle
08.03.2025 21:45:21
Christian
Hallo Uwe,

danke für den Tipp,
ich glaube ich weiß, was du meinst, ich probiere erstmal selber mein Glück und melde mich wenn ich nicht weiterkomme.

Danke
Christian
Anzeige
AW: intelligente Tabelle / Makro kopiert an falsche Stelle
09.03.2025 19:06:57
Christian
Hallo Uwe,

hab es jetzt auf folgendem Weg gelöst, funktioniert, aber dauert auch recht lange...

    Set loErgebnis = wsErgebnis.ListObjects("Tabelle6")

arrD = wsCodes.Range("D1:D" & letzteZeileMitTT).Value
arrF = wsCodes.Range("F1:F" & letzteZeileMitTT).Value

For j = LBound(arrD, 1) To UBound(arrD, 1)
With loErgebnis.ListRows.Add
.Range(1, 1).Value = arrD(j, 1) ' Spalte A in Tabelle6
.Range(1, 4).Value = arrF(j, 1) ' Spalte D in Tabelle6
End With
Next j
Anzeige
AW: intelligente Tabelle / Makro kopiert an falsche Stelle
09.03.2025 21:09:55
Uduuh
Hallo,
Aber ohne Beispieldatei kann man da nicht viel mehr weiterhelfen.
Was ist daran so schwer zu verstehen?

Gruß aus'm Pott
Udo
AW: intelligente Tabelle / Makro kopiert an falsche Stelle
09.03.2025 21:23:07
Christian
Hallo Uwe,

ich hatte das schon verstanden.
Mach nur mal aus einer 27,8 MB großen Datei eine die mal nur noch 300KB hat und trotzdem noch alles beinhaltet, was das Makro braucht.
Bin dabei, aber ich bin kein Profi wie du, für mich bedeutet das testen, testen und nochmal testen ob nicht doch was fehlt oder nicht funktioniert.
Bin jetzt zumindest mal froh, schonmal das eigentliche Problem gelöst zu haben, auch wenn meine Lösung etwas dauert.

Gruß
Christian
Anzeige
AW: intelligente Tabelle / Makro kopiert an falsche Stelle
09.03.2025 21:35:08
Alwin Weisangler
Hallo Christian,

das ist doch logisch, wenn du jede Zelle einzeln da über eine Schleife reinschreibst. Die macht man On Block via .Resize.
Pseudocode:


Set loErgebnis = wsErgebnis.ListObjects("Tabelle6")
arrD = wsCodes.Range("D1:D" & letzteZeileMitTT).Value
arrF = wsCodes.Range("F1:F" & letzteZeileMitTT).Value

With loErgebnis.ListRows.Add
.Range(1, 1).Resize(UBound(arrD), 1) = arrD
.Range(1, 4).Resize(UBound(arrF), 1) = arrD
End With


Gruß Uwe
Anzeige
AW: intelligente Tabelle / Makro kopiert an falsche Stelle
09.03.2025 21:49:14
Christian
Hallo Uwe,

ich muss mir wohl nochmal genauer anschauen, wie das mit den ListObjects funktioniert.
Ich war froh, mit der Schleife zumindest eine funktionierende Lösung gefunden zu haben.

Zu deinem Code, für einen Pseudocode, der nicht getestet werden konnte, sehr gut.
Ok, ein Buchstabe war falsch, aber das habe ich schnell korrigiert.

Auf jeden Fall vielen Dank und noch einen schönen Sonntag.
Christian
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige