SVERWEIS interpoliert nicht alle Zellen?

SVERWEIS interpoliert nicht alle Zellen?

Meine SVERWEIS-Formel interpoliert nicht alle Zellen

    AD           AE   AF
11-6-2014 15:20 90,4 #N/A
11-6-2014 15:21 89,1 #N/A
11-6-2014 15:22 90,4 Good
11-6-2014 15:23 89,1 Good

Die Spalte AF ist meine Formel: (auf Niederländisch) =AE4-(VERT.ZOEKEN(AD4;$AL$3:$AM$39714;2;WAAR)-1000) (versuchte Übersetzung auf Englisch) =AE4-(VLOOKUP(AD4;$AL$3:$AM$39714;2;True)-1000)

Dies ist ein Teil der Matrixspalte:

        AL        AM
11-6-2014 15:22 1026,9
11-6-2014 15:23 1027,3
11-6-2014 15:24 1027,2
11-6-2014 15:25 1026,9

Meine Daten (1026,9) vom 11.06.2014 15:22 werden gefunden. Aber ich möchte, dass dieser Wert auch für den 11.06.2014 15:20 und den 11.06.2014 15:21 interpoliert wird. Soweit ich weiß, sollte es einfach das nächste Datum suchen und den Wert in der Matrix ausgeben, aber das tut es nicht.

Irgendwelche Ideen?

Antwort1

Dies ist die Vorgehensweise, VLOOKUPdie funktionieren soll, wenn der Range LookupParameter auf gesetzt ist TRUE. Es wird der Wert für den nächsten Wert zurückgegeben, der kleiner oder gleich dem Nachschlagewert ist. Wenn kein Wert dieses Kriterium erfüllt, wird ein Fehler zurückgegeben.

Ein paar Optionen für Sie:

  1. Legen Sie eine Ausnahme für Werte unterhalb der Untergrenze fest und wir VLOOKUPerledigen den Rest. Um dies zu tun, packen Sie Ihre Funktion einfach in eine IFERRORFunktion ein.

    =IFERROR(AE4-(VLOOKUP(AD4;$AL$3:$AM$39714;2;True)-1000);AE4-$AM$3)
    

    Dadurch werden alle fehlerverursachenden Nachschlagevorgänge standardmäßig auf den ersten Wert in der Spalte gesetzt AM.

  2. Wenn Sie stattdessen die Daten für das nächste Datum zurückgeben möchten, nicht nur für das nächste, das kleiner oder gleich Ihrem Nachschlagewert ist, können Sie etwas anderes als verwenden VLOOKUP. Die folgende Array-Formel gibt den Wert AMfür das nächste Datum zurück. Mittelpunkte zwischen Daten werden dem späteren Datum zugeordnet.

    =AE4-INDEX($AM$3:$AM$39714,MAX(IF(ABS($AL$3:$AL$39714-AD4)=MIN(ABS($AL$3:$AL$39714-AD4)),ROW($AL$3:$AL$39714)-2,-1)))
    

    CtrlDies ist eine Array-Formel. Sie muss daher durch Drücken von + Shift+ eingegeben werden, Enterdamit sie richtig funktioniert. Wenn dies richtig gemacht wurde, wird sie in der Formelleiste in geschweiften Klammern angezeigt.

    Bei langen Arrays wie Ihrem (N= 39.712), Array-Formeln können rechnerisch langsam sein und Ihre Tabelle verlangsamen. Berücksichtigen Sie dies also bei der Entscheidung, welche Methode Sie verwenden möchten.

verwandte Informationen