Excel: Wie verwende ich Textfunktionen in einem Nachschlagearray, ohne eine weitere Spalte einzufügen?

Excel: Wie verwende ich Textfunktionen in einem Nachschlagearray, ohne eine weitere Spalte einzufügen?

Wenn ich eine vertikale Verschlagwortung oder eine Übereinstimmungsfunktion verwende, aber mit meinem Nachschlagematerial ein paar Kauderwelschaufgaben machen muss, gibt es eine Möglichkeit, dies im Nachschlagearray zu tun, ohne einfach eine weitere Spalte hinzuzufügen?

Angenommen, ich habe einen Suchwert von „FOOBAR 123“ und möchte den Datensatz mit dem Namen „FOO BAR123“ zurückgeben.

Am liebsten würde ich so etwas machen wie

=MATCH(SUBSTITUTE(A1," ",""),SUBSTITUTE('Sheet1'!$A:A," ",""),0)

Aber das SUBSTITUTENachschlage-Array macht es kaputt.

Es ist möglich

=MATCH(SUBSTITUTE(A1," ",""),'Sheet1'!$B:B,0)

Und fügen Sie eine =SUBSTITUTE(A1," ","")Spalte in Blatt1 hinzu. Gibt es aber eine Möglichkeit, dies zu vermeiden?

Antwort1

Vielleicht verstehe ich Ihre Frage falsch, sonst sollte es für Sie funktionieren.

=ERSATZ(VERGLEICH(A1,'Tabelle1'!$A:A,0)," ","")

Antwort2

Die erste Formel ist in Ordnung, sofern Sie sie als Array-Formel festlegen (also mit STRG+UMSCHALT+EINGABE). In diesem Fall wird Ihnen jedoch dringend davon abgeraten, auf die gesamte Spalte A zu verweisen, da dies sonst zu einer extrem ressourcenintensiven Formel führt.

Durch die Aufteilung des Vorgangs auf zwei Spalten wird zudem der Berechnungsaufwand reduziert.

={MATCH(SUBSTITUTE(A1," ",""),SUBSTITUTE($A:$A8000," ",""),0)}

wäre aufwändiger als die folgende Zwei-Spalten-Lösung

=SUBSTITUTE(A1," ","")                                   //in column B
=MATCH(SUBSTITUTE(A1," ",""),$B1:$B8000,0)

Denn im ersten Fall muss die Substitution auf Spalte A einmal für jede Zeile berechnet werden, im zweiten Fall hingegen darf die Substitution für Spalte A nur einmal berechnet werden.

Beantwortet von @XOR LX. Ich poste das, um die Frage als gelöst zu markieren, aber XOR LX verdient die Anerkennung.

verwandte Informationen