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

Mehrere Parameter mit Matrix abgleichen

Mehrere Parameter mit Matrix abgleichen
12.04.2018 09:51:34
superman_dy
Lieber Herr Herber,
Liebes Forum,
ich habe ein Problem, bei dem ich derzeit gar keinen Lösungsansatz sehe. Ich dachte zunächst SVERWEIS oder WENN als Matrixformel, aber ich bekomme es nicht hin.
Aufgabestellung:
A1 1
A2 1,9
A3 9,18
A4 1,9,18
A5 9,27,34,56
usw.
Diese Zahlen entsprechen Ländernamen, bspw.
1 Austria
2 Australia
3 Belgium
4 Cayman Islands
5 Channel Islands
6 China
7 Czech Republic
8 France
9 Germany
10 Hong Kong
11 Hungary
12 India
13 Indonesia
14 Ireland
...
Wie schaffe ich es nun
- die 1 in A1 mit Austria
- die 1,9 in A2 mit Austria, Germany
zu ersetzen?
Es gibt Felder in denen stehen bis zu 56 Zahlen. Die Zusammensetzung variiert ständing, morgen kann in A1 1,27, 45 stehen. Insofern ist eine statische Lösung mit WENN Anfragen nicht geeignet.
Durch das mehrfache Vorkommen der Parameter und mehrerer Parameter in einer Zelle komme ich mit dem SVERWEIS nicht weiter. Mit WENN auch nicht, WENN Matrixformel ist mir nicht mehr so geläufig. :(
Ich würde mich sehr freuen, wenn jemand eine tolle idee hat. PRIMA ware eine Lösung ohne VBA nur mit Formeln, wenn möglich.
Ganz lieben Dank,
Mandy
PS. Ich habe leider keine Berechtigung von diesem Rechner aus, Dateien hochzuladen.. falls sich jemand wundert...

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

Betreff
Datum
Anwender
Anzeige
VBA Split
12.04.2018 10:24:17
ChrisL
Hi Mandy
Ohne VBA wird es m.E. schwierig.
Folgenden Code in ein Standardmodul:
Function VerweisSpezial(rngZelle As Range, rngBereich As Range)
Dim ar As Variant, i As Integer
ar = Split(rngZelle, ",")
For i = LBound(ar) To UBound(ar)
ar(i) = WorksheetFunction.VLookup(Replace(ar(i), " ", "") * 1, rngBereich, 2, 0)
Next i
VerweisSpezial = Join(ar, ", ")
End Function

Dann als Formel verwendet z.B.
=verweisspezial(A1;G$1:H$14)
cu
Chris
AW: VBA Split
12.04.2018 10:56:25
superman_dy
Hallo Chris,
ganz ganz lieben Dank schon mal. Vor allem auch für diese Rekordantwortzeit!!
Wenn es nicht zu viel Arbeit macht, kannst du es mir vlt. erklären. Welcher Befehl definiert den Bereich mit den Zahlen und wo definiere ich den Bereich der Suchmatrix?
Wenn sich noch jemand mit kombinierten Formeln austoben möchte, immer her mit der Lösung. :)
Dann versuche ich das mal einzubauen. Ich bin zwar JavaScript-Programmierer mit dem LiveCycleDeigner, aber von VBA hab ich gar keine Ahnung.
LG Mandy
Anzeige
AW: VBA Split
12.04.2018 11:14:38
ChrisL
Hi
Viele Möglichkeiten gibt es ja nicht ;)
=verweisspezial(A1;G$1:H$14)
=verweisspezial(Kriterium;Suchmatrix)
cu
Chris
AW: VBA Split
12.04.2018 11:26:19
superman_dy
Hallo Chris,
ganz ganz lieben Dank schon mal. Vor allem auch für diese Rekordantwortzeit!!
Wenn es nicht zu viel Arbeit macht, kannst du es mir vlt. erklären. Welcher Befehl definiert den Bereich mit den Zahlen und wo definiere ich den Bereich der Suchmatrix?
Wenn sich noch jemand mit kombinierten Formeln austoben möchte, immer her mit der Lösung. :)
Dann versuche ich das mal einzubauen. Ich bin zwar JavaScript-Programmierer mit dem LiveCycleDeigner, aber von VBA hab ich gar keine Ahnung.
LG Mandy
Anzeige
AW: Mehrere Parameter mit Matrix abgleichen
12.04.2018 10:59:38
Daniel
Hi
mit Formeln wird das schwierig.
ggf mit den neusten Funktionen Textkette usw. ließe sich was machen aber die sind mir jetzt auch nicht geläufig.
eine Manuelle Umwandlung könnte so gehen:
1. Erstelle ein Tabelle mit den Nummern in Spalte A und den Ländernamen in Spalte B (die Tabelle heiße "LänderTabelle")
2. Wende auf die Spalte A die Funktion Daten - Datentools - Text in Spalten an.
die Zahlen sollten jetzt vereinzelt ab Spalte B stehen
3. gehe in die 58. Spalte (also die erste Freie, die keine Nummern enthält) und gebe dort in der Zeile 1 folgende Formel ein:
=Wenn(B1="";"";SVerweis(B1;LänderTabelle!$A:$B;2;0)&Wenn(C1="";"";", "&C1))

4. ziehe diese Formel soweit nach rechts (56 Spalten) wie benötigt und soweit nach unten wie benötigt
5. das Gesamtergebnis steht in der ersten Spalte mit diesen Formeln (Spalte 58). diese kannst du kopieren und in Spalte B als Wert einfügen.
ggf kannst du das Formelwerk ja so stehen lassen, wenn die Anzahl der verschiedenen Länder nicht mehr werden kann.
dann brauchst du, wenn wenn neue Daten kommen immer nur das TextInSpalten mit diesen ausführen.
per VBA ließe sich relativ einfach eine UDF programmieren, aber mit reinen Excelformeln wird's schwierig.
Gruß Daniel
Anzeige
AW: Mehrere Parameter mit Matrix abgleichen
12.04.2018 12:18:12
superman_dy
Hallo Daniel,
auch dir erst einmal vielen lieben Dank.
Ich werde jetzt mal versuchen, eure beiden Lösungen umzusetzen und melde mich dann.
LG Mandy
AW: Mehrere Parameter mit Matrix abgleichen
12.04.2018 12:36:29
superman_dy
Hallo Daniel,
habe mal mit deiner Lösung gestartet, da ich VB gar nicht kann.
Daten in Spalten hatte ich schon. Deine Formel tut schon sehr viel, was sie soll, ABER macht noch etwas, wo ich jetzt keine Idee habe, wie ich das wegbekomme.
Wenn die aufgesplitteten Daten in B1 starten, bspw.
B1:9 C1:18
macht ja die Formel folgendes:
Wenn B1 leer ist, dann mache nix, ansonsten führen einen SVERWEIS aus. Suchkriterium ist B1, Suchmatrix die Ländertabelle
UND ....
AAAAAhhhhhhh, jetzt sehe ich es selbst, ich lass einfach die UND Wenn Verknüpfung weg.. ich hatte mich nämlich gewundert, woher die folgenden Zahlen kommen.
Cool, jetzt verkette ich die Dinger und dann sollte es erst mal das tun, was es soll!!
Vielen DANK!! Jetzt checke ich noch mal, ob ich die VB Varianten hinbekomme.. :(
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige