serarya
Goto Top

Excel - Sverweis - Ist das ein Bug?

Hallo Community,

also cih wollte mir für Private Zwecke einen kleinen Excel Sheet erstellen, das natürlich mal wieder zu einem Großprojekt angewachsen ist...

Nun ich habe folgende Ausgangssituation:

Tabelle mit einer Spalte:

Kampf mit 2 Waffen
Verteidigung mit 2 Waffen
Verbesserter Kampf mit 2 Waffen
Verbesserter Kritischer Treffer (KS)
Waffenfokus (KS)
Mächtiger Waffenfokus (KS)
Waffenspezialisierung (KS)
Mächtige Waffenspezialisierung (KS)
Waffenfinesse
Ausweichen
Heftiger Angriff

und dahinter noch eine Tabelle mit folgenden Werten:

Eiserner Wille
Unverwüstlich

Jetzt möchte ich mit SVerweis auf diese Tabellen zugreifen und einen bestimmten Wert ausgeben lassen wenn die Folgende Bedingung zutrifft:
Wenn sich in diesen Beiden Tabellen "Verbesserter Kampf mit 2 Waffen" befindet, so soll "-5" ausgegeben werden. Wenn das nicht sort steht dann die Zahl 11.

Ich habe geschrieben:

=WENN(ODER(SVERWEIS("Verbesserter Kampf mit 2 Waffen";D237:AF258;1)="Verbesserter Kampf mit 2 Waffen";SVERWEIS("Verbesserter Kampf mit 2 Waffen";AI237:BK258;1)="Verbesserter Kampf mit 2 Waffen");-5;11)

Jetzt gibt er allerdings immer 11 aus. Wie ihr seht befindet sich der Suchbegriff innerhalb der Matrix und der Spaltenindex ist auch korrekt. Ich habe mit dem Assistenten herausbekommen das der SVerbeis mit der suche nach "Verbesserter Kampf mit 2 Waffen" den Wert "Mächtige Waffenspezialisierung (KS)" als Ergebnis hat.

=SVERWEIS("Verbesserter Kampf mit 2 Waffen";D237:AF258;1) => Ausgabe "Mächtige Waffenspezialisierung (KS)"

Das Komische allerdings ist das ich bereits schoneinmal per SVerweis auf diese Matrix zugegriffen habe und zwar auf der Suche nach dem Wert "Waffenfokus (KS)" und "Mächtiger Waffenfokus (KS)". Und Beide Werte wurden korrekt erkannt und ausgegeben.

Woran kann das liegen?

Content-ID: 80782

Url: https://administrator.de/contentid/80782

Ausgedruckt am: 20.11.2024 um 00:11 Uhr

Biber
Biber 14.02.2008 um 21:42:27 Uhr
Goto Top
Moin Serarya,

der vierte Parameter der SVERWEIS-Funktion muss jeweils auf FALSCH geändert werden.
Du hast im Moment eine 1 ( also ein WAHR) dort stehen.
Dann würde Excel als Suchmatrix erstens eine aufsteigend sortierte Liste erwarten, zweitens daraus den Wert nehmen, der als erster gleich oder größer ist.

Du hast keine aufsteigend sortierte Suchmatrix, sondern eine unsortierte. ->daran scheitert SVERWEIS().
Außerdem willst immer eine exakte Übereinstimmung, keine ungefähre.

Ändere in der Formel also erstmal nichts außer jeweils den 4. (WAHR-) Parameter in FALSCH.

Um deine Frage zu beantworten: Kein bug, sondern Bedienfehler.

Grüße
Biber
Serarya
Serarya 14.02.2008 um 22:23:12 Uhr
Goto Top
Tja und wieder mal lags an OSI Layer 8 ;)

Vielen dank für die Hilfe ich wäre nich darauf gekommen das das an dem fehlenden 4. Parameter liegen würde
bastla
bastla 14.02.2008 um 22:46:12 Uhr
Goto Top
Hallo Serarya und Biber!

Der Hinweis auf den 4. SVERWEIS-Parameter ist zwar richtig, allerdings wird sich bei der Anwendung daraus das Problem ergeben, dass bei einem fehlenden Eintrag "Verbesserter Kampf mit 2 Waffen" das Ergebnis "#NV" lautet - daher besser:
=WENN(UND(ISTNV(SVERWEIS("Verbesserter Kampf mit 2 Waffen";D237:AF258;1;0));ISTNV(SVERWEIS("Verbesserter Kampf mit 2 Waffen";AI237:BK258;1;0)));11;-5)  
Da mir die Bedingung "Wenn sich in diesen Beiden Tabellen "Verbesserter Kampf mit 2 Waffen" befindet, so soll "-5" ausgegeben werden." nicht ganz klar war (eigentlich hieße das für mich, der Eintrag müsste in jeder der beiden "Tabellen" enthalten sein), habe ich mich an das ODER (was ja überprüft, ob in mindestens einer der beiden "Tabellen" der gesuchte Text vorkommt) aus der ursprünglichen Formel gehalten - UND heißt es jetzt nur, weil ich mit ISTNV() das "Nicht-Vorhandensein" abfrage.

Ganz nebenbei noch ein Hinweis: Überprüft wird mit SVERWEIS() ohnehin nur die jeweils erste Spalte eines angegebenen Bereiches, sodass also die Angaben "D237:D258" bzw "AI237:AI258" auch genügten.

Grüße
bastla
Serarya
Serarya 15.02.2008 um 16:57:31 Uhr
Goto Top
Also, das verstehe ich noch nicht ganz. Da in der gesamten Formel kein ODER mehr vorkommt kann das doch garnicht klappen?

Sie haben ganz recht, dieser Begriff soll nur in einer von den Beiden "Tabellen" vorkommen damit es 11 ausgibt, ansonsten -5.

also wie sähe das dann richtig aus?

=WENN(ODER(ISTNV(SVERWEIS("Verbesserter Kampf mit 2 Waffen";D237:AF258;1;0));ISTNV(SVERWEIS("Verbesserter Kampf mit 2 Waffen";AI237:BK258;1;0)));11;-5) ist das Oder jetzt an der korrekten Stelle? (Ich hab gerade kein Excel zur Verfügung, sonst hätte ich es sofort getestet.

@ Biber: Deine Aussage hat tatsächlich insofern nicht gestimmt, das manchmal korrekte Werte, manchmal #NV ausgegeben wurde. Also stimmte irgendetwas nicht an der Syntax...
bastla
bastla 15.02.2008 um 17:20:48 Uhr
Goto Top
Hallo Serarya!

Da in der gesamten Formel kein ODER mehr vorkommt kann das doch garnicht klappen?
... was allerdings vorkommt ist "UND NICHT" - abgefragt wird jeweils durch ISTNV(), ob der SVERWEIS() einen Fehler liefert (da der Suchbegriff nicht gefunden wurde). Durch das UND ergibt sich, wenn in beiden "Tabellen" der Suchbegriff NICHT enthalten ist, ist das Formelergebnis 11, ansonsten (mindestens eine "Tabelle" enthält den Suchbegriff) liefert die Formel -5.

... soll nur ...
... oder "muss nur"? Aus der im Eröffnungsbeitrag geposteten ODER-Formel ergäbe sich ("X" bedeutet "enthält Suchbegriff"):

Spalte DSpalte AIPunkte
0011
X0-5
0X-5
XX-5


Aus "soll nur" folgte allerdings:

Spalte DSpalte AIPunkte
00-5
X011
0X11
XX-5


Schließlich wäre das Resultat von "muss nur":

Spalte DSpalte AIPunkte
00-5
X011
0X11
XX11

Welche Variante soll umgesetzt werden?

Grüße
bastla
Serarya
Serarya 18.02.2008 um 09:19:25 Uhr
Goto Top
Spalte D Spalte AI Punkte
0 0 11
X 0 -5
0 X -5
X X -5

das da face-smile

wobei im endeffekt dasd auch ok wäre, weil dieser begriff eh niemals in beiden Tabellen vorkommen sollte:

Spalte D Spalte AI Punkte
0 0 11
X 0 -5
0 X -5
X X 11
bastla
bastla 19.02.2008 um 23:51:19 Uhr
Goto Top
Hallo Serarya!

Die Formel für die von Dir gewünschte Variante steht in meinem ersten Posting - hast Du diese schon getestet?

Grüße
bastla
Serarya
Serarya 20.02.2008 um 17:39:51 Uhr
Goto Top
Habe es jetzt getestet, hatte allerdings die Formel falsch verstanden und Werte vertauscht. Aufjedenfall klappt es jetzt vielen dank face-smile