Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Excel: Spalten in neues Arbeitsblatt kopieren





Frage

Hallo, ich möchte gerne die Spalte A und alle Spalten, die beim Aufruf des Makros selektiert sind, in ein neues Arbeitsblatt kopieren. Wie geht das bitte? Schöne Grüße Renatus

Antwort 1 von Hajo_Zi

Hallo Reantus,

Selection.copy Worksheets("Tabelle2").Range("A:A")

Gruß hajo

Antwort 2 von Renatus

Hallo,

ich habe mal

Selection.copy Worksheets("Tabelle2").Range("A:A")


als neues Modul eingefügt. Tatsächlich werden die markierten Spalten kopiert. Aber nicht Spalte A... Wo ist der Hase begraben?

Antwort 3 von Hajo_Zi

Hallo Renatus,

ist die Spalte vieleicht nicht markiert?

Gruß Hajo

Antwort 4 von Renatus

Hi,

wie schon geschrieben: "Spalte A und alle Spalten, die beim Aufruf des Makros selektiert sind". Mit anderen Worten: Spalte A ist nicht markiert, soll aber trotzdem mit kopiert werden.

Übrigens wäre es noch besser, wenn die Spalten in eine ganz neue Excel-Datei kopiert würden - nicht nur in ein neues Arbeitsblatt...

Danke schon mal für die Hilfe.

Gruß

Renatus

Antwort 5 von coros

Hallo Renatus,

nachfolgende Code-Zeilen sollten Dir Spalte A und alle markierten Spalten in eine neue Datei kopieren.

Range("A:A," & Selection.Address).Copy
Workbooks.Add
Range("A1").PasteSpecial


MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 6 von Renatus

Danke für die Antwort. Es gibt mit

Range("A:A," & Selection.Address).Copy
Workbooks.Add
Range("A1").PasteSpecial

allerdings folgende Fehlermeldung:

Laufzeitfehler ´1004´:
Bei einer Markierung von nicht-angrenzenden Zellen ist die Ausführung dieses Befehls nicht möglich.

Antwort 7 von Renatus

Weiß der Henker, warum, aber jetzt funktioniert es. Vielen Dank.

Antwort 8 von Renatus

Ich habe jetzt herausgefunden, daß die oben genannte Fehlermeldung auftritt, wenn gar keine Spalte markiert wurde. Kann man da vielleicht eine Überprüfung durchführen, die ggfls. die Fehlermeldung "Bitte markiere mindestens eine Spalte!" ausgibt? Danach sollte das Makro beendet werden. Wäre prima.

Danke sehr.

Antwort 9 von coros

Hallo Reantus,

dann sieht das wie folgt aus:


If IsEmpty(Selection) = True Then
MsgBox "Es wurden keine zu kopierenden Spalten markiert. " _
& "Markierung bitte nachholen", vbCritical, "fehlende Spaltenmarkierung..."
Exit Sub
End If
Range("A:A," & Selection.Address).Copy
Workbooks.Add
Range("A1").PasteSpecial



MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 10 von Renatus

Danke sehr. Habe fertig.