Gå til innhold

Trenger hjelp til formler i Excel for arbeidstidregistrering


spruddel

Anbefalte innlegg

Hei, forsøker å lage et veldig enkelt skjema i Excel, men har ikke holdt på så mye med Excel enda, så er ikke helt god.

 

Har lagt med et bilde av hvordan jeg har det nå. Men tanken min er at hvis jeg f.eks. vet at jeg skal jobbe 13 timer en dag, hvis jeg trenger x antall timer til avspasering en annen dag, og at jeg startet på jobb 08:00, når skal jeg da slutte f.eks. Vil lage sirkel-formel egentlig. Slik at jeg kan fylle inn i hvilken som helst celle, så regnes det andre ut. Om jeg vet at jeg må stikke klokken 20:00 en kveld, og at jeg trenger 14 timer, men at jeg må trekke fra kanskje 45 minutter i middag, når må jeg da starte på jobb og slikt.

 

Jeg klarer naturligvis å finne ut av dette uten å bruke Excel, men vil lære meg å bruke funksjonene som finnes, så dette er litt mer som trening.

Prøvde med noe slik =HVIS(.......), men fikk det ikke helt til kan man si!

 

 

post-107939-0-13997900-1418045690_thumb.jpg

Lenke til kommentar
Videoannonse
Annonse

Det er jo naturligvis det jeg allerede har i D2. Det fungerer jo som man ser av bildet mitt. Men vil kunne velge å skrive inn i hvilken som helst celle, så skal den som ikke er fylt ut gi meg svaret.

Om jeg vet hvor mange timer jeg skal jobbe en dag, og når jeg skal hjem, så skal den vise i A2 når jeg må starte. Om jeg vet at jeg skal jobbe 8 timer med 1/2 time pause, og skal starte på jobb 08.00, så skal B2 vise når jeg skal slutte.

Lenke til kommentar

Hei

 

Her er en kodeløsning som ikke er blodtestet. Premisset er at du bruker akkurat de kolonnene som på illustrasjonen din. Høyreklikk arkfanen, velg "view code", lim inn følgende:

Option Explicit

Dim bAuto As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
Dim R As Long
Dim What As Long
If Target.Count > 1 Then Exit Sub 'paste
If Target(1).Column = 3 Then Exit Sub 'pause
If bAuto = True Then Exit Sub

R = Target(1).Row
Select Case Target(1).Column
    Case 1
        If Me.Cells(R, 2).HasFormula = False And Me.Cells(R, 2).Value > 0 Then
            What = 12
        Else
            What = 14
        End If
    Case 2
        If Me.Cells(R, 1).HasFormula = False And Me.Cells(R, 1).Value > 0 Then
            What = 12
        Else
            What = 24
        End If
    Case 4
        If Me.Cells(R, 1).HasFormula = False And Me.Cells(R, 1).Value > 0 Then
            What = 14
        Else
            What = 24
        End If
    Case Else
End Select

Select Case What
    Case 12
        bAuto = True
        Me.Cells(R, 4).FormulaR1C1 = "=RC[-2]-RC[-3]+(RC[-2]<RC[-3])-RC[-1]"
        bAuto = False
    Case 14
        bAuto = True
        Me.Cells(R, 2).FormulaR1C1 = "=RC[-1]+RC[2]+RC[1]"
        bAuto = False
    Case 24
        bAuto = True
        Me.Cells(R, 1).FormulaR1C1 = "=RC[1]-RC[3]+(RC[1]<(RC[3]+RC[2]))-RC[2]"
        bAuto = False
    Case Else
End Select
End Sub

Beste hilsen Harald

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...