/ Forside/ Teknologi / Administrative / MS-Office / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
MS-Office
#NavnPoint
sion 18709
refi 14474
Klaudi 9389
Rosco40 5695
berpox 5456
dk 5398
webnoob 4919
Benjamin... 4870
o.v.n. 4637
10  EXTERMINA.. 4373
Tidsberegning i Excel
Fra : Naurton
Vist : 5846 gange
80 point
Dato : 31-10-07 18:30


-Mon ikke der er nogen der kan hjælpe med formlen til tidsberegning i Excel.
Hvis tidsrummet mellem eks.v. kl. 18:15 til 03:30 skal beregnes, tidsrummet går altså over kl. 24.

Samme formel skal kunne bruges til normal tidsberegning mellem eks.v. 11:00 til 18:30

M.v.h.
Naur

 
 
Kommentar
Fra : Bille1948


Dato : 31-10-07 18:37

Du bliver vel nødt til at have datoen med også, for at det kan lykkes.

Kommentar
Fra : e.c


Dato : 31-10-07 19:08

A1> 31-10-07 22:00 Formater celle til klokkeslet med denne visning
A2> 01-11-07 01:30 Formater celle med samm visning
A3> ..............03:30 Formater klokke slet med denne visning og formel = sum(A2-A3)

Det burde kunne gøre det.

Kommentar
Fra : Bille1948


Dato : 31-10-07 20:53

Det var præcis det, jeg skrev

Kommentar
Fra : e.c


Dato : 31-10-07 20:59

Ja det var det Bille - og min kommentar skal bare ses som en visning af Bille's kommentar.

Hvis det virker - så venligst ingen point til mig.

Kommentar
Fra : henrikkrebs


Dato : 31-10-07 22:08

Citat
Du bliver vel nødt til at have datoen med også, for at det kan lykkes.


Er I sikre?

Nu gider jeg ikke lige starte en PC med M$ Excel op, men hvis man forstår hvad 'et klokkeslet' er, så er det barnemad.

Lad os tage et eksempel:

Tallet ½ kan i de fleste regneark formatteres på forskellige måder:

Som et almindeligt tal: 0,5
Med et fast antal decimaler: 0,50
Som procent: 50%
Som et klokkeslet: 12:00 .. Hov, det vil jo sige, at 'tid' måles i antal døgn. En 24'endedel af et døgn kan enten skrives 0,0416666 eller som 01:00

En dato er så bare en måde at formattere et antal dage efter et eller andet udgangspunkt - fx. 31.12.1899

Fra tid1 til tid2 er der jo (tid2 minus tid1)

Er 3.:30 minus 18:15 så lig minus 14:45 eller er det 9:15?
Det du gerne vil have er en formel der siger "Er resultatet negativt, så lægges en til".

Denne formel er simpel matematik: Tiden er (1 + (tid2 minus tid1)) modulus 1



Kommentar
Fra : Bille1948


Dato : 31-10-07 23:29

Det lyder "meget godt" men der er ikke noget nyt i det du skriver, det er blot andre "ord".

Men Excels "kalender" starter først den 1. januar 1900.

Bill Gates tog ikke højde for datoer denne dato.

Kommentar
Fra : sion


Dato : 01-11-07 09:54

Jeg har en helt anden løsning, som jeg mener er meget bedre, da den ikke indbefatter Excels eget tidssystem.

I stedet for Excel-tider, skriver du klokkeslæt som decimaltal. Altså kl 17:30 er 17,3 og kl 01:20 er 1,2. Du kan så formatere decimaltallene, så de kommer til at ligne klokkeslæt, med formatet "00,00".

Mine funktioner er også i stand til at regne tidsforskellen ud henover kl. 24.

Her er et eksempel:

Kolonneoverskrifter
A1: Start-tid
B1: Slut-tid
C1: Beregnet tidsforskel
D1: Beregnet computer-starttid
E1: Beregnet computer-sluttid
F1: Beregnet computer-tidsforskel

Funktioner
A2: Indtast start-tid, eksempelvis 13,30 (cellen formateres som "00,00")
B2: Indtast start-tid, eksempelvis 14,15 (cellen formateres som "00,00")
C2: =3/5*(F2-(HELTAL(F2)))+HELTAL(F2) (cellen formateres som "00,00")
D2: =2/3*(A2-(HELTAL(A2)))+A2
E2: =2/3*(B2-(HELTAL(B2)))+B2
F2: =HVIS(D2=E2;24;HVIS(D2>E2;E2-D2+24;E2-D2))

Resultatet, tidsforskellen, står i C2 - i dette eksempel 00,45.
Computer-tiderne er "[time],[andel_af_time]", der kan adderes og subtraheres (hvad almindelige klokkeslæt ikke kan). Computer-tiderne omregnes til almindelige klokkeslæt i C2.

Den samlede funktionen kan naturligvis sættes sammen og skrives i C2 (kopiér linje for linje):
=3/5*(HVIS(A2=B2;24;HVIS(A2>B2;(2/3*(B2-(HELTAL(B2)))+B2)-
((2/3*(A2-(HELTAL(A2)))+A2)-24);(2/3*(B2-(HELTAL(B2)))+B2)-
(2/3*(A2-(HELTAL(A2)))+A2)))-(HELTAL(HVIS(A2=B2;24;HVIS(A2>B2;
(2/3*(B2-(HELTAL(B2)))+B2)-((2/3*(A2-(HELTAL(A2)))+A2)-24);
(2/3*(B2-(HELTAL(B2)))+B2)-(2/3*(A2-(HELTAL(A2)))+A2))))))+
HELTAL(HVIS(A2=B2;24;HVIS(A2>B2;(2/3*(B2-(HELTAL(B2)))+B2)-
((2/3*(A2-(HELTAL(A2)))+A2)-24);(2/3*(B2-(HELTAL(B2)))+B2)-
(2/3*(A2-(HELTAL(A2)))+A2))))

Simon

Kommentar
Fra : henrikkrebs


Dato : 01-11-07 10:51

Citat
kan adderes og subtraheres (hvad almindelige klokkeslæt ikke kan).


Jo, almindelige klokkeslet kan, når man husker:
Tid måles i dage og brøkdele heraf
Tidspunkt måles i dage (og brøkdele heraf) siden 31.12.1899

Trækker du to tidspunkter fra hinanden, så får du tiden mellem dem
Lægger du en tid til et tidspunkt, så får du et nyt tidspunkt.

Mange regneark har en feature der skulle gøre det nemmere at indtaste tal.

Taster du 0,5 så opfattes det som ½ og skrives 0,5
Taster du 12:00 (en halv dag) så opfattes det som ½ men formateret som tid '12:00'

Taster du 12:00 og så vil lægge en time til, så kunne det jo tænkes at det bare var at rette 12:00 til 12:00 + 1/24, men den går så ikke. Programmet kan simpelthen ikke finde ud af hvad du mener. Du må rette formatet til et almindeligt kommaformat, og så kan du lægge 1/24 til og rette tilbage til tid-format, som så bliver 13:00.

Men det går nemt at regne på tider og tidspunkter i 'native' format, dog må du som nævnt i nogle tilfælde rette formatteringen til at vise decimaltal (dage) mens regnearket dannes. Bagefter kan du rette formatteringen til det du synes der er kønnest.

Kommentar
Fra : sion


Dato : 01-11-07 11:13

--> henrikkrebs

Du har naturligvis ret - på sin vis Jeg har nok bare ikke forklaret mig tydeligt nok.

Excels tidssystem er måske nok ganske udmærket til datoer og klokkeslæt - men ikke til tid.

Lad os tage det eksempel, at du på en arbejdstimeseddel har start- og sluttidspunkt hver dag, og beregner tidsforskellen/arbejdstiden. Så langt går det godt. Men når du så summerer arbejdstiderne for hver dag for at beregne din samlede arbejdstid for hele perioden, går det galt for Excel, da den starter fra nul, hver gang den når til 24 timer.

Derudover er jeg meget træt af Excels autoformatering mht. dato/tid. Hvis man eksempelvis indtaster 50 timer og 13 minutter som "50:13", så står der i cellen "02-01-1900 02:13:00" - det kan jo ikke bruges til at regne med.

Jeg mindes også at have haft problemer med, at to ens klokkelsæt ikke har være lig med hinanden (når man f.eks. tester i en HVIS-funktion). Det har også givet nogle problemer.

Derfor lavede jeg får nogle (mange) år siden de funktioner, jeg har har skrevet i mit foregående indlæg.

Simon

Kommentar
Fra : henrikkrebs


Dato : 01-11-07 11:47

Ja - problemfrit er det ikke.

Skal vi gå over til internet-tid (døgnet delt i 1000 beats)?

Jeg mødte forleden en englænder og vi talte om vægt - han vejede et eller andet antal stones (á vistnok 14 pounds). Jeg tænkte "de er frygtelig antikverede de englændere".

Vi er vel lige så håbløst bagud med døgn/timer/minutter/sekunder

Kommentar
Fra : e.c


Dato : 01-11-07 14:20

Sion >
Citat
kl 01:20 er 1,2

Hvad skal der så skrives kl 01:50 ..............


Kommentar
Fra : sion


Dato : 01-11-07 14:29

--> e.c

01:20 skrives som 1,2 - det kommer med formateringen "00,00" til at stå som 01,20.

01:50 skrives som 1,5 - det kommer med formateringen "00,00" til at stå som 01,50.

Simon

Kommentar
Fra : sion


Dato : 01-11-07 14:35

Hvis 01,20 indtastes, bliver det omregnet til computer-tiden 1,3333 - altså 1 1/3 time.

Hvis 01,50 indtastes, bliver det omregnet til computer-tiden 1,8333 - altså 1 5/6 time.

Forskellen i computertid bliver da 1,83 - 1,33 = 0,50 (altså 1/2) - dette omregnes til almindeligt klokkeslæt til 0,30 (eller i formatet "00,00" til 00,30) (nul timer og 30 minutter).

Simon

Kommentar
Fra : sion


Dato : 01-11-07 14:44

Overstående eksempel viser ikke nødvendigheden af alle mine funktioner. Tilsyneladende kunne man jo bare have trukket 1,2 fra 1,5 og fået 0,3...

Men prøv med 1,2 (kl. 01:20) og 2,1 (kl. 02:10): 2,1 - 1,2 = 0,9... Det er helt forkert. Der er ikke 90 minutter, og det giver ingen mening at sige 00,90 timer.

Vha. mine funktioner regnes klokkeslættene om til computer-tiderne 1,33 og 2,17. Forskellen er da 2,17 - 1,33 =

Kommentar
Fra : sion


Dato : 01-11-07 14:47

Overstående eksempel viser ikke nødvendigheden af alle mine funktioner. Tilsyneladende kunne man jo bare have trukket 1,2 fra 1,5 og fået 0,3...

Men prøv med 1,2 (kl. 01:20) og 2,1 (kl. 02:10): 2,1 - 1,2 = 0,9... Det er helt forkert. Der er ikke 90 minutter, og det giver ingen mening at sige 00,90 timer.

Vha. mine funktioner regnes klokkeslættene om til computer-tiderne 1,33 og 2,17. Forskellen er da 2,17 - 1,33 = 0,83 (altså 5/6) - dette omregnes til almindeligt klokkeslæt til 0,50 (eller i formatet "00,00" til 00,50) (nul timer og 50 minutter).

Simon

Kommentar
Fra : sion


Dato : 01-11-07 15:12

Jeg har lige siddet og leget lidt med regnearket...

Funktionen i F2 kan med fordel erstattes med =HVIS(D2=E2;24;REST(E2-D2;24))

Således kan den samlede funktion (som giver samme resultat som C2) ændres til:
=3/5*(HVIS(A2=B2;24;REST((2/3*(B2-HELTAL(B2))+B2)-(2/3*(A2-HELTAL(A2))+A2);24))-
HELTAL(HVIS(A2=B2;24;REST((2/3*(B2-HELTAL(B2))+B2)-(2/3*(A2-HELTAL(A2))+A2);24))))+
HELTAL(HVIS(A2=B2;24;REST((2/3*(B2-HELTAL(B2))+B2)-(2/3*(A2-HELTAL(A2))+A2);24)))

Simon

Kommentar
Fra : e.c


Dato : 01-11-07 17:03

Ok Sion

Kommentar
Fra : meiland


Dato : 02-11-07 08:41

Hej Naurton

Nu skriver du ikke hvordan du vil skrive tidspunkterne i excel og hvad du skal bruge det til.
Jeg har før brugt excel til et flexseddel, hvor jeg har indtastet f.eks. 16,25 (kl. 16.25) og fået det omregnet til decimaltimer (16,42).
Løsningen på problemet med sluttider efter midnat er at lægge 24 til tidspunktet, hvis det drejer sig om en dag.
Nu har jeg delt tidspunkterne op så jeg indtaster timer og minuter i seperate celler. Jeg kan maile dig arket, hvis det har interesse.

Kommentar
Fra : meiland


Dato : 02-11-07 13:07

Eksempel
Starttid 18.30
Sluttid 03.15

b10=18
c10=30
d10=3
e10=15

f10=hvis(d10-b10<0;d10-b10+24;d10-b10) resultat = 9
g10=e10-c10 resultat=-15

h10=f10+g10/60 resultat = 8,75 (Tidsforbrug i decimaltimer (1 time = 100 minnutter)


Kommentar
Fra : henrikkrebs


Dato : 02-11-07 13:27

... men jeg holder mig nu til at regne i dage og decimaldele heraf og vise det (hvor det er ønsket) som tid. Det kræver dog trods alt færre formler

Kommentar
Fra : Naurton


Dato : 03-11-07 21:46

Tidsberegning i Excel:

Formlen er: =("24:00"-H9)+I9

Hvor H9 er celle for starttid, og I9 er celle for sluttid, -vil give resultatet for den ønskede periode, uanset om sluttid går over 24:00

Naur

Kommentar
Fra : henrikkrebs


Dato : 03-11-07 23:44

Citat
Formlen er: =("24:00"-H9)+I9

Hvor H9 er celle for starttid, og I9 er celle for sluttid, -vil give resultatet for den ønskede periode, uanset om sluttid går over 24:00


Det er vigtigt at forstå det der ligger bag. Det er nemlig ikke rigtigt at resultatet vil blive korrekt uanset om sluttid går over 24:00.

Hvis sluttiden går over 24:00, så vil resultatet blive et tal under 1. Det kan vises som et antal timer under 24, fx "9:15"
Hvis sluttiden ikke går over 24:00, så vil resultatet blive et tal over 1 (nemlig eet døgn og nogle timer. Det kan også vises som et antal timer under 24, fx "9:15". Så egentlig ser det smukt ud, men prøv at lægge fx en hel uges timer sammen. Så er det ikke ligegyldigt om resultatet bliver 1 (= et døgn = 24 timer) eller 2 (=48 timer)

Men det er slet ikke så svært. Der findes en funktion 'modulus' der klarer det. Der er sikkert også en 'decimal-del', men jeg har ikke lige excel her.

Kommentar
Fra : refi


Dato : 04-11-07 14:51

Nogen der kan hovedregning

Kommentar
Fra : henrikkrebs


Dato : 04-11-07 15:01

Jeg kan.

Men samtidig ved jeg at undersøgelser af fejlforekomster viser at 'maskinregning' af selv simple regnestykker giver langt færre fejl end hovedregning. Forskellige undersøgelser giver forskellige resultater, men de ligger i intervallet fra brøkdele af promille op til 30% af fejlhyppigheden i hovedregnede tal.

Kommentar
Fra : dbl


Dato : 05-11-07 04:47

Hvorfor så meget udregning.

[B]Her er hvordan du gør.[/B]

Start med at formater dine celler til klokkeslæt (den uden sekunder).
I celle A1 indtaster du din mødetid (18:15) skal skrives med ":"
I celler B1 indtaster du din sluttid (03:30) skal skrives med ":"
Udregningen i f.eks. celler C1 skal se således ud =B1-A1+(A1>B1)

Mvh.
d.Buus

www.dbuus.dk Gratis regneark
www.mextos.dk Sport og Legetøj

Kommentar
Fra : dbl


Dato : 05-11-07 07:41

PS! Hvis du skriver det som jeg har beskrevet ovenfor, så vil du få nogle "sjove" tal hvis enten A1 eller B1 ikke er udfyldt.
Det kan rettes ved at bruge denne formel i C1
=HVIS(A1=0;0;HVIS(B1=0;0;(B1-A1+(A1>B1))))

Mvh.
d.Buus

Accepteret svar
Fra : dbl

Modtaget 80 point
Dato : 05-11-07 07:49

PSS! Jeg har lige uploadet et lille ark så du (i andre må også godt kigge med) kan se at det virker.

http://peecee.dk/?id=76689


Mvh.
d.Buus

Godkendelse af svar
Fra : Naurton


Dato : 05-11-07 19:36

Tak for svaret dbl.

Kommentar
Fra : dbl


Dato : 05-11-07 20:13

Det var så lidt.

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409081
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste