Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Inhalt einzelner Zeilen zusammenführen und mit Komma trennen
#1
Hallo zusammen,

Gleich vorweg, ich bin kein Profi. Allerdings versuche ich immer wieder mit Excel klar zukommen Sleepy Heute tüftle ich schon ewig an folgendem Problem:
Ich habe in mehreren Zeilen verschiedene Werte in verschiedenen Spalten, welche ich gerne am Ende durch ein Komma + Leerzeichen getrennt in einer Zelle zusammenfassen möchte. Dies benötige ich für einen Serienbrief. Eigentlich ja kein Problem. Allerdings ist der Inhalt pro Zeile immer unterschiedlich lang und wenn es dann einen kürzeren Inhalt gibt, habe ich ein Problem mit den Kommas. Das sieht dann Beispielsweise so aus: 2, 3, 4, 5, 6, , , , , ,. Und genau um diese Komas am Ende geht es. Die sollen dort nicht stehen, egal wie lang der Inhalt ist. Ich weiß jetzt nicht, ob ich mich verständlich ausgedrückt habe, deshalb hänge ich hier noch ein Bild an. 

Besten Dank für Eure Hilfe

[Bild: Excel.jpg]
Antworten Top
#2
Hallo

In Office 365 und in Excel Online ist die Funktion TEXTVERKETTEN() verketten verfügbar.
Ansonsten gibt es Lösungen mit Hilfsspalten oder mit UDFs (z.B. VJoin von Castor).
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#3
Hallo,

ich habe da noch einen VBA-Code in meinem Fundus der dir auch helfen könnte:

Folgender VBA-Code muss in ein Modul der Tabelle (*):
Code:
Function Verketten2(ByRef bereich As Range, Trennzeichen As String) As String
Dim rng As Range
   For Each rng In bereich
      If rng <> "" Then
      Verketten2 = Verketten2 & rng & Trennzeichen
      End If
   Next
If Len(Verketten2) > 0 Then _
Verketten2 = Left(Verketten2, Len(Verketten2) - Len(Trennzeichen))
End Function

In die Zelle AK2 dann folgende Formel:

=Verketten2(E2:AI2;", ")

(*)
- Öffne mit Alt+F11 den VBA-Editor
- mit Strg+R den Projekt-Explorer öffnen und aktivieren
- die gewünschte Datei per Doppelklick markieren
- Tastenkombination Alt+E und dann M drücken
- in der rechten Fensterhälfte ist jetzt ein leeres Modul eingefügt worden
- in dieses Modul muss der Code eingefügt werden
- im Projektexplorer wird das Modul unter der Datei angezeigt
- speichen und den VBA-Editor mit Alt+F4 schliessen
- die Funktion steht dir jetzt in dieser Datei zur Verfügung
Gruß
Peter
[-] Folgende(r) 1 Nutzer sagt Danke an Peter für diesen Beitrag:
  • schubste
Antworten Top
#4
Hi,

hier eine Formellösung für XL2013. Die Formel musst du halt erweitern.

Tabelle1

GHIJKLMNOPQRSTUVWXYZAAABACADAEAFAG
171, 2, 3, 4, 5, 6, 7
278910111213141, 2, 3, 4, 5, 6, 7, 8, 9, 10
3789101112131415161718192021222324252627282930311, 2, 3, 4, 5, 6, 7, 8, 9, 10
4567891, 2, 3, 4, 5, 6, 7
Formeln der Tabelle
ZelleFormel
AG1=WECHSELN(GLÄTTEN(A1&" "&B1&" "&C1&" "&D1&" "&E1&" "&F1&" "&G1&" "&H1&" "&I1&" "&J1);" ";", ")

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Quelle: http://www.online-excel.de/excel/singsel.php?f=35
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
[-] Folgende(r) 1 Nutzer sagt Danke an WillWissen für diesen Beitrag:
  • schubste
Antworten Top
#5
Moin,

kannst, darfst, willst du Power Query, -> http://www.excel-ist-sexy.de/power-query-das-add-in/ verwenden?
Wenige Mausklicks (bei mir <10) und das Ergebnis ist so wie gewünscht da ...


Angehängte Dateien
.xlsx   Komma_Leerzeichen_concat.xlsx (Größe: 31,43 KB / Downloads: 3)
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
[-] Folgende(r) 1 Nutzer sagt Danke an GMG-CC für diesen Beitrag:
  • schubste
Antworten Top
#6
Hallo Zusammen,

Vielen vielen Dank für Eure Antworten. Ich habe mich für die Lösung von Peter entschieden. Diese funktioniert für mich super.  :19:
Natürlich ist es immer am einfachsten, einen vorhanden Code zu kopieren, aber leider fehlt mir die Zeit um tiefer einzusteigen.
Ich hoffe, die finde ich irgendwann  :05:

viele Grüße
Stefan
Antworten Top
#7
(03.06.2017, 12:48)Peter schrieb: Hallo,

ich habe da noch einen VBA-Code in meinem Fundus der dir auch helfen könnte:

Folgender VBA-Code muss in ein Modul der Tabelle (*):
Code:
Function Verketten2(ByRef bereich As Range, Trennzeichen As String) As String
Dim rng As Range
  For Each rng In bereich
     If rng <> "" Then
     Verketten2 = Verketten2 & rng & Trennzeichen
     End If
  Next
If Len(Verketten2) > 0 Then _
Verketten2 = Left(Verketten2, Len(Verketten2) - Len(Trennzeichen))
End Function

In die Zelle AK2 dann folgende Formel:

=Verketten2(E2:AI2;", ")

(*)
- Öffne mit Alt+F11 den VBA-Editor
- mit Strg+R den Projekt-Explorer öffnen und aktivieren
- die gewünschte Datei per Doppelklick markieren
- Tastenkombination Alt+E und dann M drücken
- in der rechten Fensterhälfte ist jetzt ein leeres Modul eingefügt worden
- in dieses Modul muss der Code eingefügt werden
- im Projektexplorer wird das Modul unter der Datei angezeigt
- speichen und den VBA-Editor mit Alt+F4 schliessen
- die Funktion steht dir jetzt in dieser Datei zur Verfügung

Eine Frage hätte ich noch. Ich musste meine Tabelle noch etwas umbauen. Ich habe jetzt leere Zellen in jeder Zeile und wenn ich es am Ende dann wie hier beschrieben zusammenfasse, werde mir natürlich auch die Leeren Zellen mit Kommaabtrennung ausgegeben. Gibt es einen kleine Trick, mit dem man die leeren Felder weg bekommt? Huh  Alle Zahlen sollen durch Komma + Leer getrennt fortlaufend angezeigt werden.

[Bild: bild1.jpg]

vielen Dank für Eure Unterstützung  Blush
Antworten Top
#8
Hallo,

leere Zellen wird nicht ausgegeben:
Tabelle1

ABCDEFGH
113781, 3, 7, 84
21 3 781,  , 3,  , 7, 86
Formeln der Tabelle
ZelleFormel
G1=Verketten2(A1:F1;", ")
H1=ANZAHL2(A1:F1)

In Zeile 1 sind B1, D1 und F1 leer, deswegen in H1 auch das Ergebnis 4.

In Zeile 2 ist in B2, D2 und F2 ein Leerzeichen, das Ergebnis in H2 ist deswegen auch 6.

Deswegen gehe ich davon aus, dass du tatsächlich keine leere Zellen hast.
Gruß
Peter
Antworten Top
#9
Hallo, Peter,
du sammelst so etwas? Dann sollte dich Detlefs Hinweis interessieren, denn Verketten2 gibt's in zig Varianten von verschiedenen Autoren (dazu auch noch etwas anders benannte wie VerkettenA u.ä.), VJoin aber nur in 6 Versionen vom gleichen Autor, von denen die letztpublizierte 1.4 ist:
VJoin, Vs1.4, in BspDatei
Gruß + Frohe Pfingsten, Castor
Antworten Top
#10
(03.06.2017, 17:18)Peter schrieb: Hallo,

leere Zellen wird nicht ausgegeben:

In Zeile 1 sind B1, D1 und F1 leer, deswegen in H1 auch das Ergebnis 4.

In Zeile 2 ist in B2, D2 und F2 ein Leerzeichen, das Ergebnis in H2 ist deswegen auch 6.

Deswegen gehe ich davon aus, dass du tatsächlich keine leere Zellen hast.

Hallo Peter, 

Du hast Recht. In den leeren Zellen befindet sich, wie auch bei den befüllten Feldern eine Formel, welche mir die Zelle leer ausgibt. Selbst wenn ich den Inhalt komplett einfüge und damit die Formel entferne, bleiben die Kommas. Jetzt bin ich irgendwie ratlos  Huh 

Gruß
Stefan
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste