Thema Datum  Von Nutzer Rating
Antwort
29.01.2022 22:11:02 mIKEY
NotSolved
29.01.2022 22:50:33 Gast9823
NotSolved
30.01.2022 13:40:33 mIKEY
NotSolved
Blau Schnalle es nicht...
30.01.2022 14:47:39 Gast36875
NotSolved
30.01.2022 16:19:23 mIKEY
NotSolved
31.01.2022 08:25:52 mIKEY
Solved

Ansicht des Beitrags:
Von:
Gast36875
Datum:
30.01.2022 14:47:39
Views:
419
Rating: Antwort:
  Ja
Thema:
Schnalle es nicht...

Ok. smiley

Dann noch mal zu deiner ursprünglichen Zeile:

wbSource.Worksheets(2).ListObjects("myTable").Range.Copy ThisWorkbook.Worksheets(2).ListObjects("myTable")

Aus der Doku kann man erkennen:

Range.Copy-Methode (Excel)

Kopiert den Bereich in den angegebenen Bereich oder in die Zwischenablage.

Destination Optional Variant Gibt den neuen Bereich an, in den der angegebene Bereich kopiert wird. Fehlt dieses Argument, kopiert Microsoft Excel den Bereich in die Zwischenablage.

Also erwartet Range.Copy als Parameter ein Range-Objekt. Dein Argument für den Parameter Destination ist dieser:

ThisWorkbook.Worksheets(2).ListObjects("myTable")

Wiederum kann man aus der Doku schließen:

ListObjects(Index) liefert eine Objekt-Instanz von ListObject. Ergo: ListObject ist keine Range => BäM! Problem.

Wie gelangt man nun an die Range von dem ListObject (welches ja einen Tabellenbereich auf dem Tabellenblatt darstellt)? Auch das verrrät einem die Doku. smiley Über seine Range / DataBodyRange Eigenschaft - ersteres liefert den Bereich der gesamten Tabelle; zweiteres nur den Datenteil, sprich ohne der Kopfzeile.

 

 

Also

z.B.

wbSource.Worksheets("Blatt1").ListObjects("Tabelle1").DataBodyRange.Copy ThisWorkbook.Worksheets("Blatt2").Range("B8")

Oder, vielleicht noch etwas "schöner" lesbar:

Dim tblSource As Excel.ListObject
Dim rngTarget As Excel.Range

Set tblSource = wbSource.Worksheets("Blatt1").ListObjects("Tabelle1") 'Quelle (ListObject-Tabelle)
Set rngTarget = ThisWorkbook.Worksheets("Blatt2").Range("B8")         'Ziel (Range)

'den Datenbereich kopieren wir in den Zielbereich (hier ist das die Zelle B8)
tblSource .DataBodyRange.Copy Destination:=rngTarget

(der Code ist blind geschrieben, d.h. ungetestet)

 

Grüße

PS: Ich hoffe das ich dir hiermit eine Sache näher bringen konnte, nämlich dass der Umgang mit der Doku beim Programmieren essenziell ist, um vorran zu kommen. Man ist gut beraten mit ihr umgehen zu können.

Die Leute in Foren haben das meiste Zeug auch nur aus der Doku sich selber beigebracht; und aus über hunderte/tausenden von Praxisstunden - so funktioniert das. wink

 

 

 


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
29.01.2022 22:11:02 mIKEY
NotSolved
29.01.2022 22:50:33 Gast9823
NotSolved
30.01.2022 13:40:33 mIKEY
NotSolved
Blau Schnalle es nicht...
30.01.2022 14:47:39 Gast36875
NotSolved
30.01.2022 16:19:23 mIKEY
NotSolved
31.01.2022 08:25:52 mIKEY
Solved