Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Array in eine Zelle schreiben

Array in eine Zelle schreiben
09.12.2014 11:38:53
Michael
Hallo,
zerbreche mir gerade den Kopf, ob es eine Möglichkeit gibt, die Werte eines Arrays als Text mit Komma getrennt in einer Zelle darzustellen? Also das Array quasi auszulesen?
Also {=(A1:A5)} in der Zielzelle in der Form Wert(A1), Wert(A2),...
Gruß, Michael

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
standardmäßig nicht, wozu auch ...
09.12.2014 11:48:13
neopa
Hallo Michael,
... für mich ergibt so etwas keinen Sinn, weil man es meistens anders lösen kann.
Wozu willst Du es bei Dir so haben?
Gruß Werner
.. , - ...

AW: standardmäßig nicht, wozu auch ...
09.12.2014 11:58:05
Michael
Im Prinzip geht es um einen SVerweis, bei dem einem Suchkriterium leider mehrere Ergebnisse hat. Die Tabelle ist dann auch dummerweise so gemacht, dass diese Ergebnisse kommagetrennt in der einen Zielzelle stehen. Dort werden die bisher per Hand eingetragen...

Anzeige
dann ...
09.12.2014 12:05:44
neopa
Hallo Michael,
... stell doch mal einen kleinen relevanten Datenauszug (können Dummy-Daten) sein hier als Datei ein und erkläre daran Deine Zielstellung.
Gruß Werner
.. , - ...

nachgefragt ...
09.12.2014 12:26:07
neopa
Hallo Michael,
... bezogen auf Drin Beispiel ist soll E2 nun ein Eingabewert oder ein Ergebniswert sein? Stehen in Spalte A noch weitere RNr.? und in Spalte entsprechend andere Daten?
Gruß Werner
.. , - ...

AW: dann ...
09.12.2014 13:26:29
Daniel
Hi
a) ohne VBA so vorgehen:
1. Tabelle nach Spalte A (Rechnungsnummer) und B (Kundenbestellnummer) aufsteigend sortieren
2. in Spalte C eine Hilfsspalte einfügen mit folgender Formel (Formel für C2, dann nach unten kopiert):
=WENN(ODER(A2A3;B2B3);B2&WENN(A2=A3;", ";"");"")&WENN(A2=A3;C3;"")
3. in E2 dann die Formel:
=SVerweis(123456;A:B;2;Falsch)

b) mit VBA
könnte man sich eine entsprechende benutzerdefinierte Funktion schreiben:
Function SVerweisMehrereErgebnisse(Suchbegriff As Variant, Suchmatrix As Range, _
ErgebnisSpalte As Long, Optional Trennzeichen As String = ", ") As String
Dim arr
Dim DicErgebnis As Object
Dim Zeile As Long
Set DicErgebnis = CreateObject("Scripting.Dictionary")
arr = Intersect(Suchmatrix, Suchmatrix.Worksheet.UsedRange).Value
For Zeile = 1 To UBound(arr, 1)
If arr(Zeile, 1) = Suchbegriff Then DicErgebnis(arr(Zeile, ErgebnisSpalte)) = 0
Next
If DicErgebnis.Count = 0 Then
SVerweisMehrereErgebnisse = ""
Else
SVerweisMehrereErgebnisse = Join(DicErgebnis.keys, Trennzeichen)
End If
End Function
und diese Funktion dann in der Zelle E2 verwenden:
=SVerweisMehrereErgebnisse(123456;A:B;2;", ")
Gruß Daniel

Anzeige
AW: dann ...
09.12.2014 14:20:32
Michael
Hi Daniel,
vielen Dank. Auf die Schnelle ohne VBA gemacht. Guter Trick! Die Such-Matrix in Punkt 3. muss aber von A:C laufen.
Vielen Dank noch mal!
Michael
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige