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

Mit Schleife zusammenfassen

Mit Schleife zusammenfassen
07.12.2015 10:22:27
Juli
Hallo zusammen,
ich versuche eine Schleife zu erzeugen, die alle Werte in Spate A in eine Zelle, getrennt mit einem Komma, zusammenfasst.
Beim letzten Wert soll kein Komma mehr enthalten sein.
Beispiel ("-" dienen nur der Darstellung und sind nicht enthalten):
Spalte A ---------|Spalte B
Zeile 1 06V-------|06V, 1B2, ..., 3V4,
Zeile 2 1B2
Zeile x 3V4
Könnt ihr mir hier weiterhelfen? Bin leider etwas eingerostet in VBA...

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mit Schleife zusammenfassen
07.12.2015 10:40:37
Matthias
Hallo
Option Explicit Sub Schleife() Dim x& For x = 1 To 7 'Ende anpassen If Cells(1, 2) = "" Then Cells(1, 2) = Cells(x, 1) Else Cells(1, 2) = Cells(1, 2) & ", " & Cells(x, 1) End If Next End Sub
Tabelle1

 AB
106V06V, 1B2, 3V4, 2J6, r5W, g8T, 7D3
21B2 
33V4 
42J6 
5r5W 
6g8T 
77D3 


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Matthias

Anzeige
AW: Mit Schleife zusammenfassen
07.12.2015 10:45:36
Daniel
Hi
als Schleife so:
dim erg as string
dim x
for each x in Range(Cells(1, 1), Cells(1, 1).End(xldown)).value
erg = erg & ", " & x
next
Range("B1").Value = mid(erg, 3)
der Wert in der mid-Funktion entspricht der Anzahl der Zeichen des Trennzeichen + 1 (hier ist das Trennzeichen Komma+Leerzeichen, daher 3)
es geht aber auch ohne Schleife mit einer einzigen Programmzeile:
Range("B1").Value = Join(WorksheetFunction.Transpose(Range(Cells(1, 1), Cells(1, 1).End(xlDown))), ", ")
Gruß Daniel

Anzeige
hier noch eine IIf -Variante
07.12.2015 11:17:34
Matthias
Hallo
Option Explicit
Sub Schleife()
Dim x&
Application.ScreenUpdating = False
Cells(1, 2).ClearContents
For x = 1 To 7 'Ende anpassen/einlesen
Cells(1, 2) = IIf(Cells(1, 2) = "", Cells(x, 1), Cells(1, 2) & ", " & Cells(x, 1))
Next
End Sub
Gruß Matthias

AW: und noch eine Ohne IF oder IIF
07.12.2015 11:20:06
Daniel
Sub Schleife()
Dim x&
Application.ScreenUpdating = False
Cells(1, 2) = Cells(1, 1)
For x = 2 To 7 'Ende anpassen/einlesen
Cells(1, 2) =  Cells(1, 2) & ", " & Cells(x, 1))
Next
End Sub
Gruß Daniel

Anzeige
AW: und noch eine Ohne IF oder IIF
07.12.2015 12:25:21
Juli
Ich habe die Version mit der Formel:
Range("B1").Value = Join(WorksheetFunction.Transpose(Range(Cells(1, 1), Cells(1, 1).End(xlDown))), ", ")
getestet & es klappt!
Außerdem habe ich es auf den harten Weg folgendermaßen lösen können:
| --|A -- |B
|1 |06V |=A1
|2 |1B2 |=B1&", "&A2
|3 |3V4 |=B2&", "&A3 'runter ziehen. letzes Ergebnis ist die komplette Zusammenfassung ;)
|4 |2J6 |
|5 |r5W |
|6 |g8T |
|7 |7D3 |
Besten Dank für eure Lösungen.

AW: und noch eine Ohne IF oder IIF
07.12.2015 12:31:22
Daniel
Hi
die Formellösung würde ich so machen:
in B1 die Formel: =A1&Wenn(A2="";"";", "&B2)
hat den Vorteil, dass in jeder Zelle die gleiche Formel und das fertige Ergebnis immer in der ersten Zeile steht.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige