Kuinka voin laskea kahden päivämäärän välisen eron jos päivämäärät on muodossa: aloitus 05-29-06 12:06 lopetus 06-06-06 13:47? Tarvitsen vastaukseksi kuin monta päivää ja tuntia on kulunut. Haen tiedot tietokannasta ja niitä on tuhansia, jotenka solukeralla näpertely ei onnistu.
Käytössä: suomenkielinen Excel 2003
Käytössä: suomenkielinen Excel 2003
Vastaukset 10
Vanhimmat
Valitettavasti en osaa auttaa, mutta mulla on samantapainen ongelma eli kahdenpäivämäärän välisen ajan laskeminen, mutta ilman tunteja. Päivämäärät ovat muotoa 1.1.07. Osasikohan joku vastata samalla tähän.
Yksinkertaisin menetelmä:
Jos: A1 1.1.07 ja B1 15.2.07 niin
C1 =B1-A1 [solu muotoilu "yleinen"] vastaus 45
TAI C1 =PVMERO(A1;B1;"d"), voit tehdä myös näin:
C1 =PVMERO(A1;B1;"d")&" vrk" vastaus on 45 vrk.
Alkuperäiselle kysyjälle. Excel ei tunnista muotoa
05-29-06 päivämääräksi, muoto pitää olla joko "pp-kk-vvvv" tai "vvvv-pp-kk"
ettei mene harakoille - täytyy muistaa, että excel ei ymmärrä laskiessaan päivämääriä mitään muuta kuin kokonaisluvun, joka on päivien lukumäärä tietystä ajankohdasta alkaen (vissiin 1.1.1900) ja pilkun jälkeen tulee desimaaleina kellonaika. Näitä se excel laskeskelee ja muotoilut on ihmisiä varten.
Esimerkiksi kyllä tuo 05-29-06 on ihan mahdollinen kun kirjoittaa yllä olevaan viitaten soluun 38866,5041666667 ja sitten muotoillaan soluun oma muotoilu seuraavasti "kk-pp-vv tt:mm" - kyllä pamahtaa komeasti päivä kellonaikoineen soluun.
Se missä alunperin tuossa on menty metsään on kai se että toinen päivämääristä on määritelty tekstinä exceliin.
jos esim määritellään oma muotoilu soluun näin "kk-pp-vv", jonka jälkeen soluun kirjoitetaan päivämäärä näin 29.5.2005, niin saadaan näkyviin päivämäärä asuun 05-29-07.
Näistä päivämäärälaskuista tulee aina mielenkiintoisia ketjuja. Loppujen lopuksi kuitenkin kaikki on aika selvää kunhan muistaa miten excel asiaa käsittelee.
Miten sitten saadaan se vastaus 8vrk 1t
Solussa A1 aloitusaika
Solussa A2 lopetusaika
kaava
=PYÖRISTÄ.DES.ALAS(A2-A1;0)&"vrk "&TEKSTI(A2-A1;"t")&"t"
Lasketaan ensin kahden päivämäärän erotus ihan tavallisesti miinuslaskulla, jolloin vastaukseksi saadaan "8.1.1900 1:41".
Tuohon soluun sitten määritellään käyttäjän oma muotoilu kirjoittamalla laji lootaan näin: pp "vrk "tt" t";@
Näkyviin saadaan: 08 vrk 01 t.
Tässä edelleen täytyy pitää hilseessä se tieto, että edelleen excelillä on muistissaan vain juokseva järjestysnymero, jossa on desimaaliosa tunteja varten - muotoilut on meitä ihmisiä varten.
Tuo toimii näköjään vain laskuissa, jossa tulos on alle 31 päivää.
Voiskohan tuota omaa muotoilua vielä jotenkin viitata, että toimisi pitemmillä ajoilla?
Mutoin kai tuo paavalin esittämä ratkaisu toimii.
Tämä oma muotoilu antaa vuorokausien lukumäärät vaikka kuinka pitkältä ajalta: #" "
Mutta miten tunnit - en enää jaksa.
Kaava vaihtaa päivän ja kuukauden keskenään, alkuperäinen päivä a1:ssä.
=REPLACE(B1;1;5;MID(B1;4;3)&LEFT(B1;2))
suomeksi?
=KORVAA(B1;1;5;POIMI.TEKSTI(B1;4;3)&VASEN(B1;2))