
Pár hete egy olvasó érdekes kérdést küldött nekem egy teherautó-flotta "leállított idejének" nyomon követéséről. A teherautókat GPS nyomon követi, így minden teherautó számára a nap minden órájában rögzítenek egy helyet. Az adatok így néznek ki:
A kihívás: az N oszlop melyik képlete fogja helyesen kiszámítani a teljes leállított órákat?
Ezt kissé leegyszerűsítettem azzal, hogy a tényleges GPS koordinátákat kicseréltem AE felirattal ellátott helyekre, de a koncepció ugyanaz.
A rejtvény
Hány órára állították meg az egyes teherautókat?
Vagy Excel-speak nyelven:
Milyen képlettel számolják ki az egyes teherautók teljes leállási óráit?
Például tudjuk, hogy a Truck1-et 1 órára állították le, mert 16 és 17 órakor "A" -ként rögzítették a helyét.
Feltételezések
- 5 ilyen nevű hely van: A, B, C, D, E
- Teherautó ugyanazon a helyen két egymást követő órán keresztül = 1 óra megáll
Van egy képlete, amely meg fogja csinálni?
Töltse le a munkafüzetet, és ossza meg képletét az alábbi megjegyzésekben. Mint annyi dolog az Excel programban, a probléma megoldásának számos módja van!
Válasz (kattintson a kibontáshoz)Ebben az esetben a sokoldalú SUMPRODUCT elegáns módszer a probléma megoldására:
=SUMPRODUCT(--(C6:K6=D6:L6))
A C6: K6 jegyzettartományokat egy oszlop ellensúlyozza. Lényegében összehasonlítjuk a "korábbi pozíciókat" a "következő pozíciókkal", és megszámoljuk azokat az eseteket, amikor az előző pozíció megegyezik a következő pozícióval.
A 6. sor adataihoz az összehasonlítási művelet létrehoz egy TRUE FALSE érték tömböt:
(FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,TRUE)
Ezután a kettős negatív az IGAZ HAMIS értékeket egyekre és nullákra kényszeríti, a SUMPRODUCT pedig egyszerűen a tömb összegét, amely 1:
=SUMPRODUCT((0,0,0,0,0,0,0,0,1))