Suchen Sie die entsprechende Zeile im Array

1

Ich habe eine Produktliste mit dem Gewicht der einzelnen Produkte. Ich habe eine andere Tabelle mit Gewichtsbereichen, und jeder Bereich hat unterschiedliche Lagerkosten.

Ich hätte gerne eine Formel, die angibt, in welchem ​​Sortiment sich die einzelnen Produkte befinden, und die entsprechenden Lagerkosten.

Folgendes habe ich (oben: Produktliste, unten: Speicherpreis pro Bereich):

Irgendwelche Gedanken darüber, wie mache ich das?

Beste

Gabriel

Gabriel Tortelli
quelle

Antworten:

1

Wenn Sie die Daten als solche auslegen können:

Bildbeschreibung hier eingeben

.. damit die Speicherkosten die dritte statt der ersten Spalte sind, können Sie diese Formel verwenden:

=VLOOKUP($E2,$A$12:$C$16,3,TRUE)

Während das erste Argument der Wert ist, nach dem Sie suchen, ist das zweite Argument der gesamte Bereich für Ihre Suche (ohne Überschriften), das dritte Argument ist die Spalte Ihrer Tabelle, aus der die Daten abgerufen werden sollen, und das letzte Argument gibt den Wert an Suche in einem Bereich.

Beachten Sie auch, dass Ihre Werte für die kg auf diese Weise formatiert sein müssen und nicht die Zeichenfolge "KG" als Wert enthalten dürfen. Ich habe sie beispielsweise so formatiert:

Bildbeschreibung hier eingeben


Bearbeiten: Wenn Sie die Daten im selben Layout behalten möchten, können Sie stattdessen Folgendes verwenden:

=INDEX($A$12:$A$16,MATCH(E2,$B$12:$B$16,1))

Ein bisschen weniger lesbar, aber nicht so schlecht, wie ich anfänglich angefangen habe. Beachten Sie, dass Sie die Weight to:Spalte nicht wirklich benötigen , sondern nur überprüfen müssen, ob sie sich über der Weight from:Spalte befindet

Jonno
quelle
mit der ursprünglichen Setup-Formel wäre Kombination von MATCHundINDEX
Máté Juhász
1
@ MátéJuhász Ich habe damit angefangen und es wurde ziemlich schnell ein bisschen chaotisch. Wird eine Version davon posten, wenn das OP das Datenlayout nicht ändern kann :)
Jonno
1
@ MátéJuhász Ich habe es trotzdem hinzugefügt, es war nicht ganz so unordentlich, wie ich ursprünglich dachte :)
Jonno
0

Sie können diese Formel verwenden:

=IF(E2<=$C$12,$A$12,IF(E2<=$C$13,$A$13,IF(E2<=$C$14,$A$14,IF(E2<=$C$15,$A$15,IF(E2<=$C$16,$A$16)))))

Um die Logik dahinter zu verstehen, werde ich zeigen, wie es funktioniert:

IF(E2<=$C$12
    $A$12
ELSE
    IF(E2<=$C$13
       $A$13
    ELSE
        IF(E2<=$C$14
          $A$14
        ELSE
            IF(E2<=$C$15
               $A$15
            ELSE
                IF(E2<=$C$16
                   $A$16
                END IF
            END IF
        END IF
    END IF
END IF

Es ist hässlicher und chaotischer als @ Jonnos Antwort, aber wenn Sie die Logik verstehen, ist es sehr einfach.

jcbermu
quelle