Datorn iFokus

Datorn

Etikettmicrosoft-office
Läst 247 ggr
Harriet63
0

Excelformel antal timmar:minuter

Hej
Jag får inte till det med en formel i excel som ska returnera antalet timmar och minuter som befinner sig inom ett datum och tidsintervall där dessa timmar och minuter dessutom måste infinna sig under semesterveckorna v25 till v32.
Jag lägger in ett datum i A1 ÅÅ-MM-DD samt en tid i B1 HH:MM samt även ett senare datum och tid i C1 respektive D1.

Men hur ska man nu kunna returnera antalet timmar:minuter som alltså innefattades under v25-v32?

VECKONR(DATUM;TAL) ger mig ju veckonummer för ett exakt datum för A1 men hur går man vidare därifrån och loopar igen alla timmar:minuter?

Niklas
0
#1

Jag har inte hela lösningen, men tycker att problemet borde gå att förenkla en del.

  • Behöver du ens skriva in datum och tid för dagar som infaller utanför veckointervallet? Gör du inte det slipper du den kontrollen.

  • Måste du skriva datum och klockslag i olika fält? Kan du inte ha ett tidsfält där du skriver både datum och klockslag i önskat format, exempelvis 2021-01-04 16:45?

  • Räknas all tid under perioden mellan tidpunkt 1 och tidpunkt 2 som arbetstid (dygnet runt, 7 dagar i veckan), eller är det bara ett visst antal timmar under vissa dagar som räknas?


Vänliga hälsningar, Niklas

Sök information om Sveriges adelssläkter för din släktforskning

johan
2
#2

Ha datum och tid i en cell istället med formatet åååå-mm-dd tt:mm. Då kommer du ha mycket lättare att använda formler för att räkna på datum.

Så om du i A1 har 2021-01-01 12:00
Och i A2 har du 2021-01-12 13:43
Och i A3 lägger du formeln =A2-A1 så får du skillnad i tid mellan dessa datum.

Formatera nu A3 (Ctrl+1) med Kategori Anpassat och ange formatet [t]:mm så kommer du få antal timmar och minuter mellan dessa två datum.

Mvh // Johan

johan
1
Bild 1. Klicka för att öppna i full storlek.
#3

För att styra att datumen är inom ett visst intervall föreslår jag att du använder Data, Validering (se bild).

  • Tillåt: Datum
  • Data: Mellan
  • Ange startdatum och slutdatum

Mvh // Johan

Harriet63
0
#4

#3: Det hade ju fungerat om man bara tänker att detta ska fungera för "detta år" då man an hårdkoda mellan vilka datum som v25-v32 befinner sig, men nästkommande år är ju andra datum för v25-v32

Harriet63
0
#5

#4: Dessutom ska ALLA datum vara tillåtna men det ska bara generera timmar:minuter för det som infinner sig under v25-v32

Harriet63
0
#6

#2: Det bör väl gå att få till detta datum tid förhållanden med (C1+E1)-(B1+D1) ?

Harriet63
0
#7

#2: Problemet ligger alltså i detta om exempelvis '2021-01-02 12:00' som finns i intervallet '2021-01-01 12:00 till 2021-01-12 13:43' tillhör kriteriet för om datumet:tiden finns mellan vecka25 och v32 :)

Harriet63
0
#8

#1: Niklas: All tid inom intervallet som anges ska registreras och sedan läsas ur för att se om någon timme:minut ligger i veckointervallet v25-v32

ex 21-06-20 22:00 till 21-06-21 06:13 skulle ge svaret 06:13 även om tiden i intervallet är 08:13 Detta pga av att 21-06-20 22:00 till 21-06-21 00:00 ligger under vecka 24

johan
0
#9

Använd MAX och MIN för att sätta att datumet ska vara minst ”startdatum” eller angivet datum och max ”slutdatum” eller angivet datum.

Mvh // Johan

Martin
1
#10

Har inte testat själv, men tänker en om-formel.

Du har själv formlen för veckonumren.

Du har fått kloka förslag ang tidsformateringar ovan.

Förslag.
Formel i stil med "om veckonummerformel >= 25 omformel veckonummerformel <=32 returnera antal tt:mm annars returnera "" eller liknande.

Blev kanske inte så tydligt som jag tänkte, men får du inte rätt på det så återkom så skall jag försöka sätta ihop formel enligt min tanke (om ingen annan har det bättre).

mvh Martin

Harriet63
0
#11

#10: Jo Martin, det är precis så jag tänker att formeln skulle kunna se ut, men verkar vara svårt att skriva i excel??
Ett annat alternativ är ju förstås att skriva in alla datum framåt i tiden som infaller v25 till v32. Att då lägga detta i ett eget kalkylblad och på något sätt jämföra mot vad som skrivs in i cellen e.g C1 och D1
Men får inte till detta heller :/

Martin
1
#12

Du vill alltså lägga in två datum/tider, och därimellan få ut antal timmar:minuter för de dygn då veckorna är 25-32.

Det kan bli knepigare, tror du behöver skriva ut alla datum.

Om vi slår ihop ditt förslag i första inlägget med att du skriver datum i a1 och tid i b1 till att datum och tid skrivs i a1 istället, så slår vi på samma sätt ihop c1 och d1 i b1.

Jag kan inte se något sätt att lägga veckonr-formeln på intervallet a1-b1 (den kan returnera för start resp slutdatum men inte för varje enskilt datum i intervallet).

Och jag antar att du inte vill ha en tabell med 365 (366) rader för varje datum med start- och sluttid per datum? Utan du vill ha en starttid ett visst datum och en sluttid ett annat datum?

mvh Martin

Harriet63
0
#13

#12: @Martin : Du har uppfatta helt rätt, och jag ser inte lösningen :(
=NETTOARBETSDAGAR verkar ju kunna vara något att bygga på då man där som extra option kan lägga till lediga dagar som skulle kunna vara alla andra dagar utom just de som finns mellan v25-v32. Men då försvinner u helgdagar eller andra angivna "icke-nettoarbetsdagar"

Martin
2
#14

Med nettoarbetsdagar.int har du 4 argument att ta hänsyn till, varav 2 är start- och slutdatum.

Så om du bara behöver dagar under vecka 25-32 så anger du manuellt startdatum för v 25 och slutdatum för v 32 som de två första parametrarna.

Men funktionen bygger på likformiga veckor (dock kan man själv vilja vilja dagar som är fridagar) samt sista argumentet kan vara en vektor med röda dagar.

Men är det inte lika många timmar/minuter per arbetsdag så kommer inte detta hjälpa dig heller, är jag rädd.

Se exempel:
https://www.excelbrevet.se/rakna-arbetsdagar-exklusive-helgdagar/

mvh Martin

I Excel kan man enkelt räkna antal dagar mellan två datum genom att subtrahera slutdatum och startdatum. Detta ger skillnaden...
Harriet63
1
#15

#14: Jag har löst det hela med hjälp av nettoarbetsdagar.int där jag hänvisar till en tabell med datum i en enda lång kolumn :)
Tack för tips på vägen

Martin
1
#16

Snyggt! Kul att det funkade!

mvh Martin