Wenn Sie eine einmalige Antwort wünschen, E2 > P4 > I2 > D2
kostet die billigste Route 1.452 $.
Die Methode, die ich verwendete, war nicht elegant. Ich machte aus jeder möglichen Option eine Tabelle, benutzte INDEX
und MATCH
, um die Kosten jeder Etappe der Reise nachzuschlagen und dann nach aufsteigenden Gesamtkosten zu sortieren. So sieht mein Blatt aus:
Die Daten auf der linken Seite sind die, die ich aus Ihrer Tabelle kopiert habe. Die Tabelle rechts ist das, was ich geschaffen habe. Für jedes der Felder E, P, I und D habe ich sie einfach manuell in Gruppen eingegeben. D1, D2, D3, D4, D5. Kopieren Sie diese fünf und fügen Sie sie häufig ein. I1, kopiere für einen Satz von D, I2, kopiere für einen Satz von D usw., bis die Tabelle gefüllt ist. Für das Feld $ EP habe ich die Kosten für die Reise von E (was auch immer) nach P (was auch immer) kombiniert INDEX
und MATCH
nachgeschlagen.
=1/(1/INDEX($B$3:$E$5,MATCH([@E],$A$3:$A$5,0),MATCH([@P],$B$2:$E$2,0)))
INDEX
nimmt ein Array auf und gibt eine Zelle innerhalb dieses Arrays zurück. Um die Zeile zu finden, die ich wollte, habe ich herausgefunden MATCH
, wo der E-Wert im Bereich liegt A3:A5
. Um die Spalte zu finden, habe ich den P-Wert in gesucht B2:B4
. Das gab mir die Kosten für den Umstieg von E nach P. Ich fügte den 1/(1/...)
gesamten Wrapper so hinzu, dass ein Fehler zurückgegeben würde, wenn die Strecke null wäre, was darauf hinweist, dass er nicht verfügbar war.
Ich habe diese Formel dann in die Felder $ PI und $ ID kopiert und jeweils angepasst, um auf die korrekten Bereiche zu verweisen. Schließlich fügte das Feld Gesamtkosten diese drei Abschnitte einfach hinzu. Ich habe aufsteigend sortiert und die günstigste Route gefunden. Alle Fehler - diejenigen, die nicht verfügbare Routen verwenden - wurden nach unten gesendet.
Wenn Sie ein laufendes System haben möchten, in dem Sie verfolgen möchten, wie viele Transporte für jede Etappe der Route unterwegs sind, und Sie die billigste Route basierend auf der aktuell verfügbaren Route auswählen können, möchten Sie möglicherweise eine Datenbanklösung suchen. Alternativ können Sie die sortierte Liste verwenden und einfach oben beginnen und so lange nach unten arbeiten, bis Sie eine Route finden, auf der jede Etappe aktuell verfügbar ist.