Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1508to1512
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

Spalten untereinander kopieren

Spalten untereinander kopieren
22.08.2016 20:26:29
juskri
Hallo liebe VBA-Profis,
wäre sehr dankbar wenn man mir bei folgendem Problem weiterhelfen würden.
Würde gerne nacheinander stehenden Spalteninhalt automatisch, also mit einem VBA-Code untereinander kopieren.
https://www.herber.de/bbs/user/107780.xlsm
Hier die Rohdaten in der ersten Tabelle und die gewünschte Lösung in der zweiten Tabelle.
Vielen Dank im Voraus
Wäre echt dankbar wenn mir einer den Code so aufbereitet, dass man dannach selbst die gewünschte Trennung der Spalten anpassen kann.
Beste Grüße

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten untereinander kopieren
22.08.2016 21:46:04
fcs
Hallo JusKri,
hier ein entsprechendes Makro:
Sub Copydata_umgruppiert()
Dim wks_Roh As Worksheet
Dim wks_Loes As Worksheet
Dim Spa_Roh As Long, Zei_Roh As Long, Zei_Loes As Long
Dim Spa_L_Roh As Long, Zei_L_Roh As Long
Set wks_Roh = ActiveWorkbook.Sheets(1)  'Rohdaten
Set wks_Loes = ActiveWorkbook.Sheets(2) 'Lösung
With Application
.ScreenUpdating = False
End With
'Altdaten in Zielblatt löschen
With wks_Loes
.Range(.Columns(1), .Columns(10)).Clear
End With
Zei_Loes = 0
With wks_Roh
Zei_L_Roh = .UsedRange.Row + .UsedRange.Rows.Count - 1
Spa_L_Roh = .UsedRange.Column + .UsedRange.Columns.Count - 1
For Spa_Roh = 1 To Spa_L_Roh Step 10
For Zei_Roh = 1 To Zei_L_Roh
Zei_Loes = Zei_Loes + 1
.Range(.Cells(Zei_Roh, Spa_Roh), .Cells(Zei_Roh, Spa_Roh + 9)).Copy _
wks_Loes.Cells(Zei_Loes, 1)
Next
Next
End With
With Application
.ScreenUpdating = True
End With
End Sub
Gruß
Franz
Anzeige
AW: Spalten untereinander kopieren
22.08.2016 22:06:00
juskri
Hallo Franz,
vielen lieben Dank. Funktioniert hervorragend!!! Eine Frage hätte ich doch noch. Was müsste ich denn im VBA-Code ändern, wenn z.B. jeweils 4 Spalten statt 10 wie in meinem angehängten Dokument untereinander kopieren möchte?
Danke im Voraus.
MFG
juskri
AW: Spalten untereinander kopieren
22.08.2016 22:31:00
fcs
Hallo JusKri,
in Code musst du die 10er durch 4 und die 9 durch 3 ersetzen.
In der nachfolgen optimierten Form des Makros musst nur den Wert der Variablen "Anz_Spa" (Anzahl Spalten je Block) anpassen.
MfG
Franz
Sub Copydata_umgruppiert()
Dim wks_Roh As Worksheet
Dim wks_Loes As Worksheet
Dim Spa_Roh As Long, Zei_Roh As Long, Zei_Loes As Long
Dim Spa_L_Roh As Long, Zei_L_Roh As Long
Dim Anz_Spa As Long
Set wks_Roh = ActiveWorkbook.Sheets(1)  'Rohdaten
Set wks_Loes = ActiveWorkbook.Sheets(2) 'Lösung
Anz_Spa = 10 'Anzahl Spalten je Datenblock
With Application
.ScreenUpdating = False
End With
'Altdaten in Zielblatt löschen
With wks_Loes
.Range(.Columns(1), .Columns(Anz_Spa)).Clear
End With
Zei_Loes = 0
With wks_Roh
Zei_L_Roh = .UsedRange.Row + .UsedRange.Rows.Count - 1
Spa_L_Roh = .UsedRange.Column + .UsedRange.Columns.Count - 1
For Spa_Roh = 1 To Spa_L_Roh Step Anz_Spa
For Zei_Roh = 1 To Zei_L_Roh
Zei_Loes = Zei_Loes + 1
.Range(.Cells(Zei_Roh, Spa_Roh), .Cells(Zei_Roh, Spa_Roh + Anz_Spa - 1)).Copy _
wks_Loes.Cells(Zei_Loes, 1)
Next
Next
End With
With Application
.ScreenUpdating = True
End With
End Sub

Anzeige
AW: Spalten untereinander kopieren
23.08.2016 05:16:26
juskri
Guten Morgen Franz,
vielen Dank für deine Mühe und deine schnelle Antwort. Diese Lösung ist noch besser!!!
Gruß
juskri

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige