2016-05-09 9 views
1

Ich habe Probleme, meine SVERWEIS-Funktion zu beenden.Vlookup-Funktion mit 2 möglichen Lookup-Werten

Meine Funktion:

=IFERROR((VLOOKUP($E5,'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE)), "Removed") 

-> Diese Funktion funktioniert, aber nicht für Werte mit Wildcard-Zeichen, in meinem Tisch Array, gibt es einige numerische Werte mit Sternchen am Ende. Für diese speziellen Zahlen wird ein Fehler zurückgegeben (oder in diesem Fall entfernt).

Beispiel der Tabelle Array:

1.1 
1.2 
1.3* 
1.4 
1.5* 

-> Wie stelle ich die VLOOKUP für regelmäßige Zahlen zu berücksichtigen, und Zahlen mit Sternchen (Platzhalter)?

->Hinweis ich die Sternchen aus der anderen Arbeitsmappe nicht entfernen kann, bleiben diejenigen, muss es

-> Ich will es einen der beiden Werte (die mit Sternchen oder einer finden ohne)

Vielen Dank im Voraus!

+0

Haben Sie etwas wie '1.3.1'? Der Stern ist eigentlich ein Platzhalterzeichen. Kannst du es zu etwas wie ¹ ändern? – Jeeped

+0

Ist es immer nur 1 Dezimal? Wenn dies der Fall ist, können Sie ein 'left (cell, 3)' versuchen. – findwindow

+0

Wie wäre es mit '= IFERROR (IFERROR (SVERWEIS ($ E5, 'C: \ Benutzer \ [Example.xlsx] Sheet1'! $ F $ 7: $ G $ 1048576,2, FALSE), SVERWEIS ($ E5 &" * ", ' C: \ Benutzer \ [Beispiel.xlsx] Blatt1 '! $ F $ 7: $ G $ 1048576,2, FALSCH)), "Entfernt") '? –

Antwort

2

Gerade für eine akzeptable Antwort mit:

Sie können einfach nach dem Wert ohne * suchen und wenn das zu einem Fehler führt, fügen Sie es automatisch hinzu:

=IFERROR(IFERROR(VLOOKUP($E5,'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE),VLOOKUP($E5&"*",'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE)),"Removed") 
1

versuchen, den Lookup-Wert durch eine Funktion umgewandelt werden, die entweder numerisch und Zeichenwerte, wie folgt zurückgibt:

=IFERROR((VLOOKUP(IFERROR(VALUE($E5);$E5),'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE)), "Removed") 

PS: Sorry, mein Englisch

+0

Guter Fang auf die Text-sieht-wie-eine-Nummer im Vergleich zu echten Zahlen Sache. Ich glaube, du hast dort ein Semikolon hinterlassen. – Jeeped

+0

Vielleicht habe ich das OP falsch ... aber die '*' 's sind in der' [Example.xlsx] '-Tabelle und diese Funktionen werden überhaupt nicht helfen ... Ich denke, er möchte' 1.3' eingeben und bekomme die Ausgabe von der '1.3 *' - Zeile (da gibt es keine '1.3') –

+0

@DirkReichel Ja Dirk hat Recht, diese Formel funktioniert leider nicht. Seit dem 1.3 * ist in der anderen Arbeitsmappe. Diese Formel prüft nur, ob die aktuelle Arbeitsmappenzelle ein Wert ist oder nicht. Aber ich denke du bist auf dem richtigen Weg – Theo

0

Wollte die Antwort für jeden veröffentlichen, der es nicht in den Kommentaren gefunden hat.

-> Danke Dirk Reichel für die Antwort.

=IFERROR(IFERROR(VLOOKUP($E5,'C:\Users\[Example.xlsx]Sheet1'! 
$F$7:$G$1048576,2,‌​FALSE),VLOOKUP($E5&"*",'C:\Users\[Example.xlsx]Sheet1'! 
$F$7:$G$1048576,2,FALSE)), "Removed") 

Der erste VLOOKUP sieht durch, um zu sehen, ob es ein Wert ohne und Stern (*), dann, wenn es nicht ein Wert ist, auf den Wert gehen, wenn der erste SVERWEIS falsch ist. Dies führt Sie zu dem zweiten Wert, der ein anderer SVERWEIS ist. Der zweite SVERWEIS sucht nach einem Wert, der mit einem Stern endet. Wenn es immer noch keinen Wert findet, wird es "Entfernt" ausgeben, wie durch die zweite IFERROR-Funktion demonstriert.