Makro: Tabellenspalten kopieren

Bild

Betrifft: Makro: Tabellenspalten kopieren
von: HBenE
Geschrieben am: 23.10.2015 12:39:36

Hallo zusammen,
ich bin neu in diesem Forum und habe noch wenig VBA Kenntnisse.
Vielleicht kann mir jemand weiterhelfen.
Ich habe eine Exceltabelle (Tabelle1)
Hier sind in den Zellen der Spalte A bis V die Stammdaten enthalten.
Diese ändern sich nicht.
Die spezifischen Daten stehen in den Spalten W, X, Y und den folgenden.
Die nächsten sp.Dat. stehen also in den Sp. Z, AA, AB
AC, AD, AE
usw.
Wie kann ich mit einem Makro die Stammdaten (A bis V und die spez.Dat (W, Y, Z) in ein neues Tabellenblatt kopieren?
Das nächste Tabellenblatt soll dann die Daten der Spalten A bis V und im Anschluß die
Spalten Z, AA, AB enthalten. Es sollen soviele Tabellenblätter erstellt werden wie spez. Daten (also immer drei Spalten) vorhanden sind.
Vielen Dank, schon mal vorab.

Bild

Betrifft: AW: Makro: Tabellenspalten kopieren
von: matthias
Geschrieben am: 23.10.2015 13:55:52
Hallo HBenE,
was du vorhast, lässt sich am einfachsten lösen, indem du das ganze Blatt kopierst und aus der Kopie das rauslöschst was du nicht benötigst. Dies für deine verschiedenen Blätter dann wiederholen.

Sub Test()
Dim wksOriginal As Worksheet
Dim wks As Worksheet
Set wksOriginal = Sheets("Tabelle1")
'1. Blatt erstellen
wksOriginal.Copy After:=Sheets(Sheets.Count)
Set wks = Sheets(Sheets.Count)
    wks.Name = "Blatt1"
    wks.Columns("W:Z").ClearContents           'nur Inhalte löschen
    'oder
    wks.Columns("W:Z").Delete Shift:=xlToLeft  'Spalte komplett entfernen
    
'2.Blatt erstellen
wksOriginal.Copy After:=Sheets(Sheets.Count)
Set wks = Sheets(Sheets.Count) 'Original kopieren und ans Ende stellen
    wks.Name = "Blatt2"
    wks.Columns("Z:AB").ClearContents           'nur Inhalte löschen
    'oder
    wks.Columns("Z:AB").Delete Shift:=xlToLeft  'Spalte komplett entfernen
'3.Blatt erstellen
'...
End Sub
Da ich nicht genau durchsehe was du wo in welchem Blatt haben möchstest, musst du eventuell selber noch die Buchstaben der Spalten bzw. den Namen der Blätter im Code ändern. Auch weis ich nicht, ob du die Spalten nur leeren oder komplett löschen möchtest - bitte die jeweilige Zeile löschen.
Auch wenn du VBA Nein angegeben hast, denke ich dass dieser Code einfach zu lesen ist und du das anpassen kannst.
lg Matthias

Bild

Betrifft: AW: Makro: Tabellenspalten kopieren
von: Hermann
Geschrieben am: 23.10.2015 16:02:51
Hallo Matthias,
vielen Dank für deine schnelle Antwort.
Vermutlich habe ich mein Problem nicht korrekt schildern können.
Vielleicht schaffe ich es jetzt.
Bisher verwende ich in meiner Tabelle1 eine Spaltenfixierung nach der Spalte V. und rücke für jedes kompl. Blatt immer drei Spalten nach links nach. (Ein Blatt besteht immer aus den Spalten A - V und den drei spezifischen Spalten.)
Die ersten drei spez. Spalten lauten: W,X,Y, ; die 2.: Z,AA,AB ; die 3. usw.
Blatt1 besteht also aus den Spalten A - V plus W,X,Y ; für Blatt2: A - Y plus Z,AA,AB ;
für Blatt3: A - Y plus AC,AD,AE usw.
Das ich für jede komplette Blattansicht nicht immer drei Spalten nach links scrollen muß, hätte ich dafür gerne eigene Tabellenblätter. Format und Formeln dürfen mit kopiert werden.
lg Hermann

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Makro: Tabellenspalten kopieren"