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

Zahlen und Buchstaben in Zelle suchen

Zahlen und Buchstaben in Zelle suchen
20.06.2017 09:11:54
Capone
Hallo zusammen,
gibt es eine Möglichkeit bzw. Funktion, mit der man aus einer Zahlen/Buchstaben Kombination die Zahlen und Buchstaben einzeln auslesen kann?
Beispiel:
In einer Zelle steht C6H12O6. Nun würde ich gerne in einer oder mehreren anderen Zellen als Ausgabe 6*C, 12*H und 6*O stehen haben.
Danke schon mal,
LG, Capone

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nachgefragt ...
20.06.2017 09:26:20
...
Hallo Capone?
... geht es Dir nur um Glukose? Wenn nicht, geht geht es nur um deren Basisbestandteile? Oder soll es ganz allgemein sein? Dann stell doch mal eine Auswahl der Verbindungen als Liste hier ein, die Du entsprechend "zerlegt" haben möchtest.
Gruß Werner
.. , - ...
Wozu nachgefragt, ...
20.06.2017 19:07:44
Luc:-?
…Werner;
er schreibt doch, dass das nur ein Bsp ist…‽
Das Problem sind die einzelnen Atome, denn ihnen folgt keine MengenAngabe und damit auch keine Trenn­Möglichkeit. Für das Bsp wäre es ansonsten mit UDFs recht einfach:
1. alles in 1er Zelle*: =VJoin(DataSet(VSplit(MaskOn(A1;"num"));VSplit(MaskOn(A1;"alf")));{"*";", "};-2)
2. auf 3 Zellen verteilt
2.1 alles auf 1×: {=VSplit(MaskOn(A1;"num"))&"*"&VSplit(MaskOn(A1;"alf"))}
2.2 zellweise: =INDEX(VSplit(MaskOn($A1;"num"))&"*"&VSplit(MaskOn($A1;"alf"));SPALTE(A1))
Die Links zu den UDFs poste ich noch nicht (Du kennst sie ohnehin), weil das o.g. Problem noch nicht gelöst ist. Die Fmln sind also noch nicht endgültig!
* VJoin Version 1.5!
Feedback nicht unerwünscht! Gruß, Luc :-?
Besser informiert mit …
Anzeige
Wenn da eine chemische Summenformel.
20.06.2017 19:23:43
Daniel
zerlegt werden soll müsste die Trennung vor jedem Großbuchstaben erfolgen.
Wenn kein Zahlenwert zugeordnet ist, dann ist der Wert 1
Gruß
Wäre 'ne praktikable Möglichkeit, setzt dann ...
20.06.2017 19:44:21
Luc:-?
…evtl aber die Aufzählung derselben auf die eine oder andere Weise voraus, Daniel;
muss ich mal ausprobieren…
Gruß, Luc :-?
So, dann mal umgesetzt, ...
21.06.2017 01:05:23
Luc:-?
…Folks;
natürlich wieder mit UDFs:
 ABCDEFGHI
13
C₆H₁₂O₆6*C, 12*H, 6*O6*C12*H6*O6*C12*H6*OC6H12O6H₂CO₃2*H, 3*CO2*H3*CO#NV2*H3*CO H2C1O3CaSO₄4*CaSO4*CaSO4*CaSO4*CaSO4*CaSO  Ca1S1O4C₆H₁₂O₆6*C, 12*H, 6*O6*C12*H6*O6*C12*H6*O H₂CO₃2*H, 1*C, 3*O2*H1*C3*O2*H1*C3*O CaSO₄1*Ca, 1*S, 4*O1*Ca1*S4*O1*Ca1*S4*O B13[:B15]:=VJoin(DataSet(VSplit(MaskOn(A13;"num"));VSplit(MaskOn(A13;"alf")));{"*";", "};-2)C13:E13[;C14:E15]: {=VSplit(MaskOn(A13;"num"))&"*"&VSplit(MaskOn(A13;"alf"))}G13[:I15]:=WENNFEHLER(INDEX(VSplit(MaskOn($A13;"num"))&"*"&VSplit(MaskOn($A13;"alf"));SPALTE(B13));"")I13[:I15]: {=VJoin(SplitVx(A13;ZEICHEN(ZEILE($65:$90));-1)&WENN(ISTZAHL(--RECHTS(SplitVx(A13;ZEICHEN(ZEILE($65:$90));-1)));"";1);"")}B16[:B18]: {=VJoin(DataSet(VSplit(MaskOn(VJoin(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)&WENN(ISTZAHL(--RECHTS(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)));"";1);"");"num"));               VSplit(MaskOn(VJoin(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)&WENN(ISTZAHL(--RECHTS(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)));"";1);"");"alf")));{"*";", "};-2)}C16:E16[;C17:E18]: {=VSplit(MaskOn(VJoin(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)&WENN(ISTZAHL(--RECHTS(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)));"";1);"");"num"))&"*"&                         VSplit(MaskOn(VJoin(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)&WENN(ISTZAHL(--RECHTS(SplitVx(A16;ZEICHEN(ZEILE($65:$90));-1)));"";1);"");"alf"))}F16[:H18]: {=WENNFEHLER(INDEX(VSplit(MaskOn(VJoin(SplitVx($A16;ZEICHEN(ZEILE($65:$90));-1)&WENN(ISTZAHL(--RECHTS(SplitVx($A16;ZEICHEN(ZEILE($65:$90));-1)));"";1);"");"num"))&"*"&                    VSplit(MaskOn(VJoin(SplitVx($A16;ZEICHEN(ZEILE($65:$90));-1)&WENN(ISTZAHL(--RECHTS(SplitVx($A16;ZEICHEN(ZEILE($65:$90));-1)));"";1);"");"alf"));SPALTE(A16));"")}
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Die 3. ursprüngliche Fml habe ich zur Fehlervermeidung etwas erweitert. Die neue 4.Fml erzeugt aus der Standard-ChemFml eine splittbare, bei der durch Splittung der beiden MaskOn-Ergebnisse auch 2 Vektoren mit gleichen ElementAnzahlen erzeugt wdn können, was für den ganzen Ablauf hier unverzichtbar ist.
Wenn man die 4.Fml in die ersten 3 integriert, ergeben sich die Fmln 5…7 (im unteren Teil der Tabelle gezeigt). Damit wird dann tatsächlich für unterschiedliche Fälle das Gewünschte* erzeugt, ohne dass das ganze PeriodenSystem eingebunden wdn muss. Das fktioniert auch für OriginalFmln mit tiefgestellten Anzahlen, sofern diese echte Zahlen, keine speziellen Unicode-Zeichen sind und die Fml nur so formatiert wurde. Um das zu zeigen, habe ich das mal gemacht (war kein Problem, da auch nur ein Pgm).
* Daniel gab den richtigen Denkanstoß, der mich an SplitVx und seine speziellen Möglichkeiten erinnerte.
Links: DataSet, MaskOn, SplitVx, VJoin und VSplit

Feedback nicht unerwünscht! Morrn, Luc :-?
Besser informiert mit …
Anzeige
AW: ganz einfach, weil ...
20.06.2017 19:28:22
...
Hallo Luc,
... ich mir nicht unnötig Gedanken machen wollte. Wenn man es es ganz allgemein halten wollte, müsste man wohl erst das Periodensystem auflisten und das wollte ich mir nicht antun.
Gruß Werner
.. , - ...
Das natürlich nicht! Verstehe ich; war aber klar!
20.06.2017 19:41:11
Luc:-?
Du hättest ggf nach organischen Verbindungen fragen können, Werner,
was das einschränken würde; aber auch dabei kann's Probleme geben (s.oben)!
Gruß, Luc :-?
AW: RegEx
20.06.2017 17:01:47
Fennek
Hallo,
teste mal diesen Code (einmal als Sub (Ausgabe ins Direktfenster) und als Function:

Sub s_Fen()
Tx = Cells(1, 1)
Tx = "C6H12O6"
With CreateObject("vbscript.regexp")
.Global = True
.ignorecase = True
.Pattern = "(\w)(\d)"
Debug.Print .Replace(Tx, "$1*$2")
End With
End Sub
Function Fen(rng As Range) As String
Debug.Print rng.Value
With CreateObject("vbscript.regexp")
.Global = True
.ignorecase = True
.Pattern = "(\w)(\d)"
Fen = .Replace(rng.Value, "$1*$2")
End With
End Function
mfg
Anzeige
Ich glaube, du hast die Aufgabe nicht ganz ...
20.06.2017 18:55:52
Luc:-?
…verstanden, Fen;
was bei deiner UDF rauskommt ist nicht das, was gewünscht wird. Lies doch noch mal nach! ;-]
🙈 🙉 🙊 🐵 Gruß, Luc :-?
Besser informiert mit …
AW: Luc: Danke
20.06.2017 20:05:44
Fennek
Hallo,
anderen Reihenfolge (ungeprüft)

Function Fen(rng As Range) As String
Debug.Print rng.Value
With CreateObject("vbscript.regexp")
.Global = True
.ignorecase = True
.Pattern = "(\w)(\d)"
Fen = .Replace(rng.Value, "$2*$1")
End With
End Function
mfg
Anzeige
AW: klappt nicht
20.06.2017 21:58:23
Fennek
Hallo,
jetzt getestet:

Function Fen(rng As Range) As String
Debug.Print rng.Value
With CreateObject("vbscript.regexp")
.Global = True
.ignorecase = True
.Pattern = "(\w)(\d+)"
Fen = .Replace(rng.Value, "$2*$1,")
End With
End Function
Im Beispiel funktioniert es, aber wenn das chemische Element 2 Buchstaben hat, nicht mehr.
mfg
Dann siehe oben! ;-) owT
21.06.2017 00:35:28
Luc:-?
:-?
Machst ja deinem Nick alle Ehre - Omertà! :-[ owT
22.06.2017 14:20:42
Luc:-?
:-?
AW: oder anders gesehen, Al gibts nicht mehr .-)
22.06.2017 14:44:15
...
Gruß Werner
.. , - ...
Tja, Grabesstille, aber auch deshalb gut ...
23.06.2017 00:53:00
Luc:-?
…gewählter NickName, Werner;
letztlich ist der aber auch durch (organische) Chemie groß geworden → illegale/r Schnapshandel und -Brennerei. Evtl hat man unseren hier nun auch wg Steuerhinterziehung dran gekriegt… :-]
Gruß, Luc :-?
Anzeige
AW: ... nein, er ist wieder da ...
23.06.2017 19:28:18
...
Hallo Luc,
... und diesmal mit einer präzisierten Aufgabenstellung. Schade, dass ich diese erst jetzt lese.
Ich bin dann aber ab sofort erst mal für 9-10 Tage offline.
Danach werde ich mich rein interessehalber mal an einer reinen Standardformellösung hierfür versuchen.
Sollte doch auch möglich sein, nur halt sicher nicht in 5 Minuten. Für Dich jedoch mittels Deiner UDFs dürfte es kein größeres Problem sein.
Bis demnächst dann mal wieder.
Gruß Werner
.. , - ...
Na, dann schönen Urlaub, ...
24.06.2017 03:56:04
Luc:-?
…Werner;
zwischendurch bin ich dann auch mal so 8-9 Tage weg, so dass es wohl insgesamt 2 Wochen wdn, bis wir wieder etwas von uns lesen.
StandardLösung sicher nur mit Hilfszellen, denn jetzt bin ich schon bei dualen MatrixFmln gelandet (und in 5min waren die auch nicht erstellt!).
Morrn, Luc :-?
Anzeige
AW: Zahlen und Buchstaben in Zelle suchen
23.06.2017 15:34:31
Capone
Also erstmal vielen Dank für die vielen Beiträge!
Ich denke die Funktion von Luc kommt dem schon sehr nahe was ich mir vorgestellt habe.
Aber noch mal etwas genauer:
Es soll der Reduktionsgrad eines Moleküls bestimmt werden. Es kommen nur die Atome C,H,O,N,P,S vor.
Daraus sind alle Kombinationen möglich, also zum Beispiel: C6H12O6, CH4O usw.
Es wird jeweils ein Molekül eingegeben und als Ergebnis soll dann ein Reduktionsgrad in einer anderen Zelle ausgegeben werden. Dafür wird die Anzahl des jeweiligen Atoms, mit dem Reduktionsgrad eines Elements multipliziert.
Die Reduktionsgrade sind: C:4;H:1;O:-2;N:-3;P:5;S:6
Beispiel: Eingabe: CH4O Ausgabe: 6
(Rechnung: 1*C+4*H+1*O = 1*4+4*1+1*-2 = 6)
So ich hoffe, dass es damit klarer wurde ;)
LG, Capone
Anzeige
Nun, "gleich gesagt, Arbeit gespart", ...
24.06.2017 04:51:13
Luc:-?
…Capone,
denn hier kann die Lösung auch anders aussehen als von dir angedacht. Deshalb nie nach selbstgemachten Sekundär­Problemen fragen, sondern die eigentliche Problematik schildern!
 JKLMNOP
13
Atom  CHONPSReduktGrad  41-2-356MolekülReduktionsgradK13:P14: {=VSplit(VSplit("C:4;H:1;O:-2;N:-3;P:5;S:6";";");":";1;1)}C₆H₁₂O₆2424 Lösung mit dualen MatrixformelnCH₄O66 mit/ohne ()-BerücksichtigungH₂SO₃22 (Die bisher unpublizierte UDF RepOpt kann durch 2 bzw 6× WECHSELN ersetzt werden,NH₄NO₃-8-8 die UDF TxEval auch durch die XLM-Funktion AUSWERTEN in benannter Formel.)PO(OC₂H₅)₃3610 Eine Klammer-Formel kann so nicht berechnet wdn!K16:L16[;K17:L20]: {=WAHL(SPALTE(A16:B16);TxEval(RepOpt("substitute";2;1;{2.3};RepOpt("substitute";ANZAHL2(K$13:P$13);1;{2.3};J16;                    VSplit(WECHSELN(MaskOn(J16;"gb");" ";"");"");"+"&WVERWEIS(VSplit(WECHSELN(MaskOn(J16;"gb");" ";"");"");K$13:P$14;2;)&"*"&--(LÄNGE                    (SplitVx(WECHSELN(MaskOn(J16;"anu");" ";"");""&K$13:P$13;-1))=1));{"(".")"};{"+(".")*"}));SUMMENPRODUKT(WVERWEIS(LINKS(SplitVx                    (J16;MTRANS(K$13:P$13);-1));K$13:P$14;2;);WENNFEHLER(--TEIL(SplitVx(J16;MTRANS(K$13:P$13);-1);2;2);1)))}
14
15
16
17
18
19
20
21
22
23
24
Bitte beachten! Die tiefgestellten Zahlen in den chemischen Fmln wdn von meinem HTML-Tool als Unicode-Zeichen dargestellt, sind also keine Zahlen, im Original sind sie das aber!
Da beide Fml-Varianten duale MatrixFmln sind, habe ich sie in einer Fml zusammengefasst. Da nur eine dieser Fmln verwendet wdn sollte, muss die entfallende in der WAHL-Fml durch einen LeerText ("") ersetzt wdn (kann auch immer die 2. sein)*. Die 1.Variante kann so nicht verwendet wdn. Besteht dafür Bedarf, muss die UDF RepOpt wie beschrieben ersetzt wdn. Das kann ggf auch mit TxEval gemacht wdn, diese ist aber im Archiv enthalten:
https://www.herber.de/forum/archiv/1476to1480/1476498_Projektplan.html#1477400
Hinweis: Die Einrückungen der Fml-Darstellung müssen auf jeden Fall komplett entfernt wdn!
* Die beiden Zellen der dualen MatrixFml können auch durch Aufkopieren (FormatPinsel!) des Formats einer Muster-VerbundZelle zu einer vereint wdn. Auf klassische Weise ist das nicht möglich, da Xl dann auch eine (singulare) EinzelZellen-MatrixFml nicht toleriert!
Morrn, Luc :-?
Anzeige
Falls du doch noch mal antworten möchtest, ...
26.06.2017 23:20:51
Luc:-?
…Capone,
kannst du das unter diesem Link noch bis zum 29.06. vor Mitternacht noch tun:
https://www.herber.de/forum/messages/1565550.html
Danach erreichst du mich ohnehin voraussichtl eine Woche lang nicht und der Link ist verfallen.
Im Prinzip auf der Basis des zuletzt von mir gezeigten Bsps hätte ich nämlich noch singulare Matrix- und sogar NormalFml-Lösungen anzubieten, die sogar kürzer sein können. Wenn man die einzige, auswertende UDF durch die alte XLM-Fkt AUSWERTEN in benannter Fml ersetzt, wird ggf gar keine UDF mehr benötigt, allerdings muss die Datei dann zwingend auch als .xlsm/b gespeichert wdn (bei UDFs ist das nicht erforderlich, falls diese sich in einem aktivierten AddIn befinden):
 JKLMNOP
25
C₆H₁₂O₆242424T2Form("C*6+H*12+O*6",,"C=4","H=1","O=-2")CH₄O666T2Form("C+H*4+O",,"C=4","H=1","O=-2")H₂SO₃222T2Form("H*2+S+O*3",,"H=1","O=-2","S=6")NH₄NO₃-8-8-8T2Form("N+H*4+N+O*3",,"H=1","N=-3","O=-2")PO(OC₂H₅)₃363636T2Form("P+O+(O+C*2+H*5)3",,"C=4","H=1","O=-2","P=5")K25[:K29]: {=TxEval(RepOpt("substitute";5;1;{2.3};RepOpt("substitute";ANZAHL2(VSplit(MaskOn(J25;"gb";;"");""));1;{2.3};J16;DataSet                      (NoErrRange(K$13:P$13;;ISTZAHL(VERGLEICH(K$13:P$13;VSplit(MaskOn(J25;"gb";;"");"");)));"H";;;1);"+"&DataSet(NoErrRange(K$14:P$14;;                      ISTZAHL(VERGLEICH(K$13:P$13;VSplit(MaskOn(J25;"gb";;"");"");)));1;;;1)&"*")&"|";{"*+"."*|"."|"."*(+".")"};{"+"."".""."+(".")*"}))}L25[:L29]:=TxEval(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(J25&                      "#";"C";"+4*");"H";"+1*");"N";"+-3*");"O";"+-2*");"P";"+5*");"S";"+6*");"*+";"+");")";")*");"*(+";"+(");"*#";"");"#";""))M25[:M29]:=TxEval(N25)
26
27
28
29
30
31
32
33
34
35
NoErrRange: https://www.herber.de/forum/archiv/1508to1512/t1508209.htm#1508215 (T2Form steht hier nur testweise)
Die +- ergeben sich aus der FmlBildungsMethode. Da sie nicht stören, habe ich sie auch dann nicht geändert, wenn's leicht möglich war.
Zu den gleichen Ergebnissen kann man aber auch mit folgd Fmln gelangen (bezogen auf die letztgezeigte Tab):
N39[:N43]:=TxEval(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(
WECHSELN(WECHSELN(J16&"|";K$13;"+"&K$14&"*");L$13;"+"&L$14&"*");M$13;"+"&M$14&"*");N$13;"+"&N$14&"*");
O$13;"+"&O$14&"*");P$13;"+"&P$14&"*");"*+";"+");")";")*");"*(+";"+(");"*|";"");"|";""))
Oder mit benannter Fml (ganz ohne UDFs): O39[:O43]:=ReduktGrad
ReduktGrad:=AUSWERTEN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(
WECHSELN(WECHSELN(WECHSELN(J16&"|";K$13;"+"&K$14&"*");L$13;"+"&L$14&"*");M$13;"+"&M$14&"*");N$13;"+"&N$14&"*");
O$13;"+"&O$14&"*");P$13;"+"&P$14&"*");"*+";"+");")";")*");"*(+";"+(");"*|";"");"|";""))
Das könnte sich mit der bereits zuvor erwähnten (künftigen) UDF RepOpt einfacher und kürzer darstellen, allerdings als singulare MatrixFml:
P39[:P43]: {=TxEval(RepOpt("substitute";5;1;{2.3};RepOpt("substitute";6;1;{2.3};J16;K$13:P$13;"+"&K$14:P$14&"*")&"|";{"*+".")"."*(+"."*|"."|"};{"+".")*"."+("."".""}))}
Hinweis: Zur Bildung der linearen Fmln mit den vielen WECHSELN habe ich WIEDERHOLEN in Kombination mit Anderem eingesetzt.
Luc :-?
Anzeige
AW: Nun, "gleich gesagt, Arbeit gespart", ...
27.06.2017 09:53:55
Capone
Danke Luc für die Arbeit!
Du hast Recht ich hätte das Problem gleich komplett schildern sollen.
Ich verstehe leider nicht ganz wie und welche Matrixformeln ich in mein Excelblatt einbinden kann...copy and paste hat nicht funktioniert und ich habe noch nie Matrixformeln verwendet ;)
Das mit den Klammern ist nicht so wichtig.
LG, Capone
Ich empfehle nicht die oben gezeigten, ...
27.06.2017 19:17:11
Luc:-?
…sondern die in meinem 3.Bsp im Nachfolge-Thread, Capone,
denn die sind einfacher und darunter sind auch normale Fmln. Am besten verwendest du die Fml in L25ff (grüne Felder), denn die kommt mit nur einer UDF aus. Wenn du ganz auf UDFs verzichten willst, solltest du eine benannte Fml verwenden, die ebenfalls im 2.Bsp unter dem Namen genannt, aber im Bsp nicht gezeigt wird: =ReduktGrad (in den ErgebnisZellen, Fml dann unter diesem Namen anlegen → s. 3.Bsp)
Diese Fmln fktionieren immer, mit u.ohne Klammern, denn sie gehen von der chemischen Fml aus und ersetzen nur die chem Ele­mente durch ihre Reduktionsgrade nebst verbindender Operatoren. Die ent­stehende BerechnungsFml wird im gleichen Zug auch noch von störenden partnerlosen Operatoren befreit. Da sie dann ein reiner Text ist, könnte sie auch als Wert, also der ent­stan­dene FmlText, in eine andere Zelle kopiert wdn, = davor und abschließen → fertig. Diesen zusätzlichen Schritt erspart dir aber die darum gesetzte UDF TxEval oder im Falle der benannten Fml die XLM-Fkt AUSWERTEN. Da es sich beim ent­stan­denen FmlText um eine einfache Zahl-Operator-Zahl-Verbindung handelt, können die FmlTexte hier in beiden Fällen identisch sein (ande­ren­falls würde die UDF eine US-Original-Fml-Notation benötigen).
Wenn aber () keine Rolle spielen, könntest du auch die im oberen 2.Bsp in L16(+K16)ff gezeigte duale MatrixFml verwenden, falls dir das lieber ist, denn die ist kürzer, benötigt aber immer 2 Zellen, weshalb eine davon mittels WAHL leer erscheinen sollte (Grund ist, dass Xl einzelne Ergebniswerte über den ganzen Bereich einer MatrixFml vervielfacht, mehrere nie → dort erscheint dann ggf #NV, hier aber nicht). Nochmal diese Variante aus der Fml einsatzfähig herausisoliert:
=WAHL(SPALTE(A16:B16);SUMMENPRODUKT(WVERWEIS(LINKS(SplitVx(J16;MTRANS(K$13:P$13);-1));K$13:P$14;2;); WENNFEHLER(--TEIL(SplitVx(J16;MTRANS(K$13:P$13);-1);2;2);1));"")
Du musst dann 2 Zellen auswählen, in die aktive die Fml eintragen und mit [strg][umsch][enter] abschließen. Die Fml wird dann über beide Zellen ausgedehnt und liefert in der 1. den ErgebnisWert, während die 2. leer erscheint. Das 1.Argument von WAHL liefert nur den Zähler {1.2} (MatrixKonstante, Schweizer Xl-Version {1\2}), der auch so statt SPALTE(…) verwendet wdn kann, also:
=WAHL({1.2};SUMMENPRODUKT(WVERWEIS(LINKS(SplitVx(J16;MTRANS(K$13:P$13);-1));K$13:P$14;2;); WENNFEHLER(--TEIL(SplitVx(J16;MTRANS(K$13:P$13);-1);2;2);1));"")
Die anderen Adressen musst du natürlich anpassen, was auch für diese MatrixKonstante gilt, falls du 2 untereinanderliegende Zellen benutzen willst (→ {1;2}).
In diesen Formen kann die Fml übrigens auch in einer VerbundZelle über 2 Zellen benutzt wdn, nur muss man den ZellVerbund nachträglich durch Aufkopieren des Formats einer Muster-VerbundZelle (zB per FormatPinsel) herstellen. Anderenfalls würde Xl keine MatrixFml in einer VerbundZelle akzeptieren.
Aber wie eingangs geschrieben, wahrscheinlich sind die NormalFmln des 3.Bsps eher dein Fall… ;-)
Gruß, Luc :-?

325 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige