Supportnet / Forum / Tabellenkalkulation
Zusammenfügen von Zellinhalten
Frage
HAllo zusammen
Ich würde für folgendes Problem eine Lösung ganz dringend benötigen.
Und zwar habe ich im Excel in Spalte A immer den Gleichen Eintrag in mehreren Zeile. Ich möchte nun die Inhalte in Spalte B in eine Zelle zusammenfügen, wenn der Inhalt von Spalte A der Gleiche ist.
Bei bedarf könnte ich Beispiel Datei Senden, dieht aer im Prinzip wie folgt aus:
A B
1 xx qwe
2 xx asd
3 xx yxc
4 xx rtz
5 zz fgh
6 zz vbn
Ergebnis:
A B C
1 xx qwe qwe; asd; yxc ;rtz
2 xx asd
3 xx yxc
4 xx rtz
5 zz fgh fgh; vbn
6 zz vbn
fg Hofi
2
3
4
5
6
Antwort 1 von piano
Hallo
Nur mit VBA. Willst Du?
mfg piano
Nur mit VBA. Willst Du?
mfg piano
Antwort 2 von Hofi76
würd mir sehr weiterhelfen
Hofi
Hofi
Antwort 3 von piano
Hallo
Hier ist der Makro:
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
Hier ist der Makro:
Sub Zusammenfügen()
Dim Zeile As Long, altWert As String, Ziel
Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.Value = "__________"
Zeile = 1
Do While Cells(Zeile, 1).Value <> ""
If Cells(Zeile, 1).Value <> altWert Then
If altWert <> "" Then
Range(Ziel).Value = Left(Range(Ziel).Value, Len(Range(Ziel).Value) - 2)
End If
If Cells(Zeile, 1).Value = "__________" Then Exit Do
altWert = Cells(Zeile, 1).Value
Ziel = Cells(Zeile, 3).Address
Range(Ziel).Value = ""
End If
Range(Ziel).Value = Range(Ziel).Value & Cells(Zeile, 2).Value & "; "
Zeile = Zeile + 1
Loop
Selection.Value = ""
End Sub
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 4 von Hofi76
Hallo piano
Danke für deine Hilfe
VBA Code funktioniert einwandfrei.
Eines vielleicht noch um die Anwendung zu verbessern möchte ich danach alle Zeilen löschen welche in Spalte c kein ergebnis haben, allerdings jene nicht die in Spalte B keinen inhalt haben
Hofi
Danke für deine Hilfe
VBA Code funktioniert einwandfrei.
Eines vielleicht noch um die Anwendung zu verbessern möchte ich danach alle Zeilen löschen welche in Spalte c kein ergebnis haben, allerdings jene nicht die in Spalte B keinen inhalt haben
Hofi
Antwort 5 von piano
Hallo
Vor
Gruss piano
Vor
Zitat:
End Sub
einfügen:End Sub
Range("A1").Activate
Do Until ActiveCell.Value = ""
If ActiveCell.Offset(0, 1).Value <> "" And ActiveCell.Offset(0, 2).Value = "" Then
ActiveCell.EntireRow.Delete
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
Gruss piano
Antwort 6 von hofi76
DANKE für deine hilfe funktioniert einwandfrei
DANKE
Hofi
DANKE
Hofi
Antwort 7 von Hofi76
Hallo piano
Jetzt hätte doch noch eine Frage, bzw.eine erweiterung
Folgendes:
A B C
1 xx qwe 234
2 xx qwe 456
3 xx yxc 234
4 xx yxc 456
5 zz fgh 789
6 zz fgh 789
Ergebnis:
A B C D
1 xx qwe 234 234;456
2 xx qwe 456
3 xx yxc 234 234;456
4 xx yxc 456
5 zz qwe 789 789;879
6 zz qwe 879
Das heißt ich möchte eine weitere Gliederung einführen
mfg Hofi
Jetzt hätte doch noch eine Frage, bzw.eine erweiterung
Folgendes:
A B C
1 xx qwe 234
2 xx qwe 456
3 xx yxc 234
4 xx yxc 456
5 zz fgh 789
6 zz fgh 789
Ergebnis:
A B C D
1 xx qwe 234 234;456
2 xx qwe 456
3 xx yxc 234 234;456
4 xx yxc 456
5 zz qwe 789 789;879
6 zz qwe 879
Das heißt ich möchte eine weitere Gliederung einführen
mfg Hofi
Antwort 8 von piano
Das überlasse ich jetzt Deiner Kreativität:
Führe einen 2. Altwert (Altwert2) ein, vergleiche ihn mittels "and" mit "(Zeile, 1).Value" und ändere die Zielzellen-Spalten entsprechend.
Gruss piano
Führe einen 2. Altwert (Altwert2) ein, vergleiche ihn mittels "and" mit "(Zeile, 1).Value" und ändere die Zielzellen-Spalten entsprechend.
Gruss piano
Antwort 9 von Hofi76
Habe ich hinbekommen
Noch ne frage: W
ie kann ich in der Zielzelle anstelle von ";" als Trennung einen Zeilensprung inerhalb der Zelle machen?
Noch ne frage: W
ie kann ich in der Zielzelle anstelle von ";" als Trennung einen Zeilensprung inerhalb der Zelle machen?
Antwort 10 von piano
Hallo
& vbLf
statt & "; "