Mehrere exzel zeilen unter einer spalte unterordnen?
Hallo leute. Ich habe eine Exceltabelle, was z.B. von A1-Z1 geht, sowie A2-Z2
(Die Liste ist viel größer)
Ich möchte es aber so haben, dass ich alles in einer spalte, z.B. A, unterstapeln kann. Wie kann man das am besten machen?
Gibt es da eine Formel?
5 Antworten
Hallo,
bin nicht ganz sicher wie deine Bereiche die du zusammenführen möchtest genau aussehen, also zu allen Varianten etwas:
Falls Zeilen/Spalten in Leserichtung jeweils die gleiche Anzahl Einträge haben kannst du diese Formeln verwenden:
- Leserichtung Zeilen: =WENNFEHLER(INDEX(Tabelle1!$A$1:$Z$2;AUFRUNDEN(ZEILE(1:1)/26;0);REST(ZEILE(1:1)-1;26)+1);"")
- Leserichtung Spalten: =INDEX($A$1:$B$10;REST(ZEILE(1:1)-1;10)+1;AUFRUNDEN(ZEILE(1:1)/10;0))
- Die Zahl (26 bzw 10) durch die geteilt wird entspricht jeweils der (maximalen) Anzahl der Einträge pro Zeile/Spalte
Falls Zeilen/Spalten in Leserichtung verschiedene Anzahlen von Einträgen müsste man sehr viel verschachteln um die Positionen korrekt zu ermitteln, daher scheint es mir sinvoller die obigen Formeln in einer Hilfspalte zu verwenden und aus dieser die Leerwerte zu entfernen oder die Zusammenführung per VBA zu erledigen:
Sub AllinOnespaltenweise()
Dim start As String, Ende As String
Dim xSpalten As Long, xZeilen As Long, zielZeile As Long
Dim s As Long, z As Long
start = "A1"
Ende = "C20"
xSpalten = Range(Ende).Column - Range(start).Column + 1
xZeilen = Range(Ende).Row - Range(start).Row + 1
For s = 1 To xSpalten
z = 1
For z = 1 To xZeilen
wert = ActiveSheet.Cells(z, s).Value
If wert <> "" Then
zielZeile = zielZeile + 1
ActiveSheet.Cells(zielZeile, Range(Ende).Column + 1) = wert
End If
Next z
Next s
End Sub
Sub AllinOnezeilenweise()
Dim Bereich As Range, zelle As Range
Dim x As Long, AusgabeSpalte As Long
Set Bereich = Range("A1:C20")
AusgabeSpalte = Bereich.Columns.Count + 1
For Each zelle In Bereich
If zelle.Value <> "" Then
x = x + 1
ActiveSheet.Cells(x, AusgabeSpalte) = zelle.Value
End If
Next zelle
End Sub
Bin mir nicht sicher, ob das möglich ist.
Da stimmt etwas in der Fragestellung nicht. B1:Z1 ist doch Teil von A1:Z1
Versuche es doch mal mit
- markieren
- kopieren
- Transponieren
Nach Deinem Text stehen Deine Daten alle in der Zeile 1
Sind es mehrere Zeilen, werden beim Transponieren alle Daten der Zeilen den Spalten zugeordnet.
...
oder jede einzelne Zeile entsprechend transponieren und untereinander einfügen
oder jede einzelne Zeile entsprechend transponieren und untereinander einfügen
Um wie viele Zeilen geht es denn ?
- Markier die Zeile ([Strg]+g, 1:1[Enter])
- Kopieren [Strg]+c
- A1 markieren
- rechte Maustaste → Inhalte einfügen... → Transponieren
Und ich möchte am ende nur eine Spalte haben. So wie du es gesagt hast habe ich es auch gemacht. Habe habe danach mehrere Spalten erhalten. Ich will aber nur dass es Spalte A gibt die anderen Spalten unter A kommen