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

mehrere Spalten untereinander

mehrere Spalten untereinander
23.09.2019 16:06:26
Jakob
Hallo zusammen,
Ich möchte euch bei folgendem um eure Hilfe bitten:
Ich stehe irgendwie auf der Leitung, und finde keinen passenden VBA-Code, den ich zu meinem Beispiel abändern kann (so weit reichen meine VBA Kenntnisse, nur in diesem Fall irgendwie nicht). Und bin nach einigen Versuchen schon recht frustriert.
Die Beispieltabelle habe ich angehängt. Es geht darum, mehrere Spalten untereinander in eine Spalte zu kopieren, d.h. die Bereiche (B6-B33, C6-33, D6-33 ...). Im Blatt "Ziel" ist dies beispielhaft gezeigt.
https://www.herber.de/bbs/user/132152.xlsx
Da ich viele solcher Blätter habe, brauche ich einen VBA-Code dafür, da dies händisch ausarten würde.
Viele, vielen Dank!
Grüße, Jakob

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

Betreff
Datum
Anwender
Anzeige
AW: mehrere Spalten untereinander
23.09.2019 16:48:17
Regina
Moin, erstmal eine Rückfrage:
Sollen alle Daten aus dem ersten Blatt in das Zielblatt übertragen werden, oder nur der oberste Block (A6 bis F32)?
Gruß
Regina
AW: mehrere Spalten untereinander
23.09.2019 16:52:37
Jakob
Liebe Regina
Jeder Block steht für ein Jahr (wie in Spalte A jeweils darüber ersichtlich). Sollte es nicht zu aufwendig sein, dann so: 2014, 2015, 2016, 2017, 2018 in die Spalten D, E, F, G, H.
Ich müsste das mit 5 Makros machen, sollt es dafür auch eine elegantere Lösung geben, ja bitte!
Danke!
LG, Jakob
AW: mehrere Spalten untereinander
23.09.2019 17:16:09
Regina
Hallo Jakob,
das sollte so gehen:
Public Sub uebtrag()
Dim lng_zeile_ziel As Long
Dim lng_zeile_quelle As Long
Dim lng_spalte As Long
Dim lng_spalte_ziel As Long
Dim obj_wks_ziel As Worksheet
Dim obj_wks_quelle As Worksheet
Dim lng_letzte_zeile As Long
Dim lng_zaehler As Long
Set obj_wks_ziel = ThisWorkbook.Worksheets("Ziel")
Set obj_wks_quelle = ThisWorkbook.Worksheets("Input Indicators")
lng_zeile_quelle = 6
lng_letzte_zeile = 32
lng_spalte_ziel = 4
For lng_zaehler = 1 To 5
lng_zeile_ziel = 3
Do Until lng_zeile_quelle > lng_letzte_zeile
For lng_spalte = 2 To 6
If lng_zaehler = 1 Then
obj_wks_ziel.Cells(lng_zeile_ziel, 1) = obj_wks_quelle.Cells(lng_zeile_quelle,  _
1)
obj_wks_ziel.Cells(lng_zeile_ziel, 2) = obj_wks_quelle.Cells(4, lng_spalte)
obj_wks_ziel.Cells(lng_zeile_ziel, 3) = obj_wks_quelle.Cells(5, lng_spalte)
End If
obj_wks_ziel.Cells(lng_zeile_ziel, lng_spalte_ziel) = obj_wks_quelle.Cells( _
lng_zeile_quelle, lng_spalte)
lng_zeile_ziel = lng_zeile_ziel + 1
Next
lng_zeile_quelle = lng_zeile_quelle + 1
Loop
lng_letzte_zeile = lng_letzte_zeile + 35
lng_zeile_quelle = lng_zeile_quelle + 8
lng_spalte_ziel = lng_spalte_ziel + 1
Next
End Sub
Da Deine Liste zahlreiche verbundene zellen enthält, die immer doof auszulesen sind, habe ich die Jahreszahlüberschriften im Zielblatt händisch eingetragen. So sollten aber die Wete von 2014 bis 2018 sauber rüber kommen.
gruß
Regina
Anzeige
AW: mehrere Spalten untereinander
24.09.2019 08:47:50
Jakob
Das ist große VBA-Kunst!
Vielen, vielen Dank @Regina!

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige