Z majhnim trikom nam bo Excel prikazal pravo razliko med dvema časoma, tudi če je vmes polnoč.

Pred časom smo se pozabavali, kako izdelati časovnico prisotnosti in izračunati, koliko ur smo bili na delu. Takrat smo upoštevali skoraj vse, le nočnega dela ne. In to tistega, kjer začnemo delo pred polnočjo in končamo po polnoči. V takšnih primerih je računanje s časi dokaj delikatno. Če recimo gremo na delo ob 7h in gremo domov ob 15h, je izračun dokaj preprost, saj moramo od 15, torej končnega časa, odšteti 7, torej začetni čas in dobimo pravilno razliko. Kaj pa če na delo pridemo ob 22h in odidemo ob 6h? V tem primeru bo odštevanje, kot je bilo v prejšnjem primeru, dalo negativno število, s čimer se ne Excel ne Calc nikakor ne strinjata, saj elektronske preglednice ne znajo prikazati negativnega časa. Če enačbo obrnemo in odštejemo 6 od 22, dobimo 16, kar tudi ni v redu. Kaj lahko naredimo?

Rešitev je pravzaprav dokaj preprosta. Vzemimo, da imamo tabelo, kjer imamo v stolpcu B čas prihoda, v stolpcu C pa čas odhoda. Načeloma izračunamo razliko tako, da od časa odhoda odštejemo čas prihoda, torej od vrednosti v stolpcu C odštejemo vrednost v stolpcu B. V primerih, ko vmes ni polnoči, zadeva deluje, in če na primer razliko izračunavamo v stolpcu D, se za celico D3 formula glasi:

=C3-B3

Kaj pa, če je vmes polnoč? Z malo opazovanja ugotovimo, da dobimo pravi rezultat tako, da v primeru, ko je razlika med tema dvema časoma negativna, kar pomeni, da smo delali čez polnoč, recimo od 22h do 6h, dobimo pravi rezultat, če razliki prištejemo en dan oziroma 24 ur. V našem primeru bi od 6 odšteli 22 in dobili -16, k temu prišteli 24 in dobili 8 ur, kar je dejanska razlika med prihodom in odhodom. Toda kako to spraviti v formulo? Lahko bi uporabili funkcijo IF.

=IF(C3>B3; C3-B3; C3-B3+24)

Če zadevo prevedemo v vsakdanji jezik bi ukaz pomenil: če je končni čas (C3) večji od začetnega (B3), potem od končnega odštej začetnega, če pa ni, pa odštej in dodaj 24. Zadeva deluje. Seveda bi lahko stvar tudi obrnili in uporabili znak manjše, kjer bi se zamenjali le elementi v ukazu IF:

=IF(C3<B3; C3-B3-24; C3-B3)

Lahko pa zadevo nekoliko poenostavimo in uporabimo malce čudno, a delujočo formulo:

=C3-B3+(B3>C3)

Ta formula v bistvu pomeni enako, saj izraz v oklepaju vrne 1, če je pogoj izpolnjen, ena pa v časovnem merilu pomeni en dan, torej 24 ur.

Trik enako deluje tako v Excelu kot v Calcu.

Moj mikro, Julij-Avgust 2010 | Zoran Banovič |