Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1844to1848
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
Makro Werte aus Spalten
14.09.2021 12:04:56
Michael
Hallo zusammen,
habe das Forum durchsucht, aber leider nicht die passende Lösung gefunden. Würde mich riesig freuen wenn mir jemand bei folgendem Problem helfen könnte:
Ich habe ein Tabellenblatt "Versuch", in welchem Daten in verschiedenen Spalten stehen (immer ab Zeile 2, in Spalte A/G/M/S/Y usw., insgesamt 10 Datensätze). Die Spalten können bis zu 2000 Werte enthalten (jede Spalte kann unterscheidlich viele Daten enthalten).
Die Werte dieser 10 Spalten sollen nun fortlaufend in Spalte A des Tabellenblatts "Zusammen" geschrieben werden.
Hättet Ihr hier vielleicht eine Makro-Lösung für mich? Habe viel probiert, aber auf Grund beschränkter Kentnisse keinen Erfolg gehabt ;)
Vielen Dank schonmal für Eure Mühe und Hilfe!
Micha

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro Werte aus Spalten
14.09.2021 13:58:28
Peter
Das ist wieder mal eine präzise Beschreibung! :--)
Wie ist denn "Zusammen" geschrieben mathematisch zu formulieren?
Sind das Zahlen, Texte - wenn Texte: einfach aneinanderhängen oder Leerzeichen oder Anderes dazwischen?
Also, wenn Texte
- einfach in Zelle A2 in Blatt "Zusammen" schreiben: "=Versuch!A2&Versuch!G2&Versuch!M2&Versuch!S2 {usw.}"
- dann Zelle runter"ziehen" bis Zeile 2001 (also vervielfältigen...)
AW: Makro Werte aus Spalten
14.09.2021 14:29:16
Michael
Hallo Herr Trawinski,
Vielen Dank für Ihre Antwort.
Das Tabellenblatt, in welche die Daten ab A1 geschrieben werden sollen, heißt bei mir "Zusammen". Dachte die Anführungsstriche machen es eindeutig.
Anzeige
AW: Makro Werte aus Spalten
14.09.2021 14:45:55
Peter
Oh sorry, das hatte ich nicht richtig gelesen... Ist eigentlich klar beschrieben...
AW: Makro Werte aus Spalten
14.09.2021 14:49:22
Peter
Trotzdem: Dann bleibt die Frage, wie alle Werte einer Matrix in die eine Spalte A geschrieben werden sollen!

Die Werte dieser 10 Spalten sollen nun fortlaufend in Spalte A des Tabellenblatts "Zusammen" geschrieben werden.

AW: Makro Werte aus Spalten
14.09.2021 14:59:44
Michael
Ich dachte in dieser Form:
Werte in Ursprungsspalten:
1 5 6 2
3 6 1 5
4 4 3 7
1 5 8
4 5
Wert in Zielspalte:
1
3
4
1
4
5
6
4
6
1
3
5
2
5
7
8
5
Sorry etwas umständlich aber vielleicht wird es klar (?).
Vielen Dank!
Anzeige
AW: Makro Werte aus Spalten
14.09.2021 15:03:06
Michael
Sorry er hat die Leerstellen nicht korrekt im Text übertragen.
Hier die Ursprungsspalten (das "-" ist eine Leerstelle)
1 5 6 2
3 6 1 5
4 4 3 7
1 - 5 8
4 - - 5
AW: Makro Werte aus Spalten
14.09.2021 16:56:31
Peter
Also Leerzellen sollen nicht mit übertragen werden - muss man wissen... macht viel mehr Aufwand!
Annahmen:
- Maximale Zeile mit Input in "Versuch" ist 2.000
- 1. Zeile in "Versuch" ist 2
- 1. Zeile für Ausgabe in "Zusammen" ist 1
So, hier mein Code:

Sub TransferData()
Const dSpaltenV As Long = 6 'Differenz zur nächsten Spalte
Const rowVersuchMax As Long = 2000
Dim rowVersuch As Long, iiSpalte As Long, clmVersuch As Long, rowVersuchE As Long
Dim rowZusammen As Long, AA As String
rowZusammen = 1 '1. (nächste leere) Zeile Ausgabe
Worksheets("Versuch").Activate '========
With Worksheets("Zusammen")
For iiSpalte = 0 To 9 'Gehe durch alle Spalten
clmVersuch = 1 + iiSpalte * dSpaltenV 'A/G/M/S/Y usw.
'Letzte Zeile in dieser Spalte suchen
rowVersuchE = Cells(rowVersuchMax + 1, clmVersuch).End(xlUp).Row
If rowVersuchE > 1 Then 'Sonst nichts in der Spalte
For rowVersuch = 2 To rowVersuchE 'Gehe durch alle Zellen der Spalte
AA = Cells(rowVersuch, clmVersuch)
If Len(AA) > 0 Then 'Dann Nicht-Leer
.Cells(rowZusammen, 1) = AA
rowZusammen = rowZusammen + 1
End If
Next rowVersuch
End If
Next iiSpalte
End With
End Sub
Da du zu faul warst eine Beispieldatei zu kreieren und hier hochzuladen, kann ich den Code nicht testen. Alle Denk- und Schreibfehler darin gehören jetzt dir!
Anzeige
AW: Makro Werte aus Spalten
14.09.2021 17:41:52
Dieter
Hier ein eventuell logisch nachzuvollziehender Code, welcher sicher kürzer geschrieben werden kann:
Option Explicit

Sub werte_in_Spalte_A()
Dim a As Long 'Schleifenvariable für die 10 Datensätze
Dim sz As Long 'Schleifenvariable für die Datensätze in der Spalte
Dim sp As Long 'Spalten
Dim zusarow As Long 'Zeile in 'Zusammen' in die geschrieben
Dim lRow As Long 'Letzte Zeile der Spalte
'--- 'Zusammen' reseten ---
Worksheets("Zusammen").Range("B:XFD").ClearContents
sp = 1 'Spalte 1
zusarow = 1 'Zeile in 'Zusammen' in die geschrieben wird am Beginn auf 1 gesetzt
Worksheets("Versuch").Activate
For a = 1 To 10
lRow = Worksheets("Versuch").Cells(Rows.Count, sp).End(xlUp).Row
For sz = 2 To lRow
'Kopieren der Zellen nach 'Zusammen' in Spalte A untereinander
Worksheets("Versuch").Range(Cells(sz, sp), Cells(sz, sp)).Copy Destination:=Worksheets("Zusammen").Cells(zusarow, 1)
zusarow = zusarow + 1 'Zeile in Spalte A wird um 1 erhöht
Next sz
sp = sp + 6 'Spalte wird um 6 erhöht, da jede 6. Spalte kopiert wird
'zusarow = zusarow + 1
Next a
Worksheets("Zusammen").Activate
End Sub

Anzeige
AW: Makro Werte aus Spalten
14.09.2021 17:48:15
Dieter
Code beinhaltet keine Erkennung der leeren Zellen. Sry jetzt erst gelesen.
AW: Makro Werte aus Spalten
14.09.2021 18:04:03
Daniel
HI

Dim S as long
for S = 7 to 6 * 10 + 1 step 6
Cells(2, S).Resize(2000).Copy Cells(Rows.count, 1).End(xlup).Offset(1, 0)
Next
Gruß Daniel
AW: Makro Werte aus Spalten
15.09.2021 07:39:36
Michael
Vielen Dank für Eure Hilfe!!
Ich teste jetzt mal und versuche zu verstehen wie die Makros funktionieren.
Nochmals Danke für Eure Mühe und die schnelle Hilfe, weiß ich sehr zu schätzen.

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige