mehrere SVERWEIS-Ergebnisse kommagetrennt in eine Zelle
#1
Hallo liebe Excel-Freunde,

ich sehe mich folgender Aufgabenstellung gegenüber:

In Spalte A habe ich in 20 Zellen untereinander jedesmal die Zahl 4711.
In Spalte B habe ich dann jeweils unterschiedliche Zahlen.
Beispiel:
4711     1
4711     2
4711     3
4711     4

Ich suche eine Funktion, mit der ich die Zahlen aus Spalte B kommagetrennt in EINE Zelle bekomme, also 
4711     1, 2, 3, 4

Kann mir jemand helfen?

Schöne Grüße, Stephan
Top
#2
Hallo Stephan,

eine Möglichkeit wäre, wenn Du rechts von der Ergebniszelle genügend leere Spalten (als ausblendbare Hilfsspalten) hast, folgende Formel in die Ergebniszelle (in meinem Beispiel D2) und diese Formel weit genug nach rechts kopieren:

=WENN(SPALTE(A1)>ZÄHLENWENN($A:$A;4711);"";INDEX($B:$B;VERGLEICH(4711;$A:$A;)+SPALTE(A1)-1)&WENN(E2="";"";","&E2))
Gruß Werner
.. , - ...
[-] Folgende(r) 1 Nutzer sagt Danke an neopa für diesen Beitrag:
  • stephaan
Top
#3
Hallo Werner,

vielen Dank für Deine Antwort.

Leider hab ich das noch nicht ganz verstanden.
Ich hänge einfach mal die Datei an, vielleicht kannst Du es mir dann konkret erklären.

Schöne Grüße, Stephan


Angehängte Dateien
.xlsx   Mann-Filter_Vergleichsnummern.xlsx (Größe: 119,42 KB / Downloads: 5)
Top
#4
Hallo zusammen,
was ist in letzter zeit los?

Das ist innerhalb kürzester Zeit die 4 Anfrage, um Zelleninhalte als String zu verketten.

Schau mal:
http://www.clever-excel-forum.de/thread-...l#pid71591
http://www.clever-excel-forum.de/thread-...l#pid74597

Und hier der Code angepasst auf Deine Datei:

Code:
Sub mach_wieder()
 Dim i As Long, j As Long
 Dim lngZ As Long

 Dim arr As Variant
 Dim varK
 Dim D1 As Object
 Set D1 = CreateObject("Scripting.Dictionary")

 Application.ScreenUpdating = False

 With Worksheets("Tabelle1")
   lngZ = .Cells(.Rows.Count, 1).End(xlUp).Row
     arr = .Range("a2:b" & lngZ)
     For i = 1 To UBound(arr)
       D1(arr(i, 1)) = D1(arr(i, 1)) & ", " & arr(i, 2)
     Next i
     Range("H2").CurrentRegion.Offset(1, 0).Resize(, Range("D2").CurrentRegion.Columns.Count).ClearContents
     For Each varK In D1.Keys
         .Cells(j + 1, 8) = varK
         .Cells(j + 1, 9) = Mid(D1(varK), 2)
         j = j + 1
     Next
 End With

End Sub


Geschrieben wird in die Spalten H:I
Gruß Atilla
Top


Gehe zu:


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