• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

premie berekenen adhv uurrooster

Status
Niet open voor verdere reacties.

Glenn2290

Gebruiker
Lid geworden
30 nov 2015
Berichten
108
Hello,

Bijgevoegd een uurroster dat mijn team werkt. Hun uren wijken af van de normale daguren, waardoor zij recht hebben op een premie. (zie kolom O tem R).
Ik heb de file al voorzien van een aantal formules, maar in de kolommen (in het geel), zoek ik achter een automatisatie die rekening houdt met, de dag (weekdag of weekend), en het aantal uren dat valt in het stelsels waardoor er een extra premie voorzien moet worden. Ik heb een 3 tal voorbeelden in mijn file voorzien van wat het zou moeten worden. Nu moet ik dat manueel uitrekenen, het zou handig zijn dat excel dat automatisch invult...

Alvast dank
Glenn
 

Bijlagen

  • Uitbetaling premie.xlsx
    13,6 KB · Weergaven: 58
Daar geraak ik niet veel wijzer uit :-(
Bv Naast het rooster, staan er een heleboel cijfers. Als ik daar op klik, zit er een formule achter, als ik dan alles net hetzelfde zet als in mijn file, krijg ik #VALUE! als antwoord. Waarom wet ik niet. Waarschijnlijk omdat ik de formule niet begrijp...
 
Dan zal je moeten wachten tot iemand er tijd voor heeft of er zin in heeft om de zoveelste vraag over ORT voor je te maken.:d
 
Glenn, er is meer info nodig.
Percentage voor feestdagen?
Afhankelijk van WANNEER men een pauze heeft in het weekend, moet die pauze(0:30 u) van het juiste % afgetrokken worden.
Wat moet er in de kolom van "Recup-uren" komen?
Misschien krijg ik er iets van gemaakt.
 
Ik heb als tijdverdrijf iets ineen geknutseld.
Ik ben er vanuit gegaan dat de feestdagen hetzelfde percentage hebben als de zondagen(150% en 160%).
In het weekend moet er een half uur pauze afgetrokken worden.
Excel moet dat natuurlijk weten, daarom moet je in een weekend 2 periodes ingeven.
1ste periode voor de pauze, 2de periode na de pauze.
Je ziet maar of je er iets mee kunt.
 

Bijlagen

  • Uitbetaling premie.xlsx
    50,2 KB · Weergaven: 45
Hallo iedereen!

Mijn excuses voor de zoveelste vraag over ORT... en snap dat het voor jullie (of de meeste) op den duur altijd hetzelfde is...

@Wieter --> Ik bekijk je file vandaag en geef je hierover nog feedback! Wat betreft de pauze, ik dacht dat je op het einde van de formule -0:30 achter kon zetten, maar zo simpel is het blijkbaar niet :p. Sorry

@rmk75 en VenA --> Ik zoek het op en kijk of ik er iets tussen vind dat aansluit bij mijn vraag.


Alvast bedankt iedereen om me toch te helpen!!
 
Wieter,
Bijgevoegd jouw knutselwerk :D. Ziet er super uit!
Ik heb in tabblad 2 de juiste uren gezet dat er gewerkt kan worden. Als ik dan in Tabblad 2 (uurroster) enkele voorbeelden zet, dan zie je dat

Voor vrijdag 1/11 --> feestdag (laat ons stellen dat hij elke feestdag aan 160% is) in totaal 8u, maar er wordt maar 7u uitbetaald ??
Voor zaterdag 2/11 --> Er wordt 8u gewerkt, waarvan er eigenlijk maar 7,5 mogen betaald worden, alleen volgens het uurrooster zal alles betaald worden aan 125% en dit voor 8;5u? De 125% is correct, alleen de uren niet.
Zondag 3/11 --> Idem als zaterdag alleen betaald hij hier 6u uit aan 150% terwijl, na 20u op een zondag aan 160% zou moeten zijn. Ook zeggen de totaal uren 8u (correcet) alleen worden er maar 6u uitbetaald?
Maandag 4/11--> 14u gewerkt, maar 17,5 uitbetalen? Dit zou dan toch 14u moeten zijn aan 100%?
 

Bijlagen

  • Uitbetaling premie(wieter).xlsx
    44,3 KB · Weergaven: 34
Hallo Glenn,
In het rooster op Blad1 moet je NIET de werkuren ingeven.
Wel de uren waarvoor een bepaald percentage geldt. En ook in het :mm formaat (vb. 15:00)
Ik heb zowel op Blad1 als op Blad2 wat uitleg bijgeschreven.
Volgens mij kloppen de uren nu wel met de percentages die jij in je eerste post hebt opgegeven.
Indien er toch nog problemen zijn, vraag maar.
 

Bijlagen

  • Uitbetaling premie1.xlsx
    50,8 KB · Weergaven: 34
Hoi Wieter,

Bedankt voor je file, het klopt helemaal. Ik heb de file ingevuld met de reeële uren en het klopt. Behalve de festdagen, maar dat komt door mij.

Ik heb je file aangevuld met commentaar van mezelf om de uitbetaling van de feestdagen te geven. Denk je niet dat we misschien kolommen moeten bijmaken voor de feestdag?

Indien de datum een feestdag is in de week 8u recup? Indien in een weekend, betalen volgens ploegenpremie?

Alvast bedankt voor je hulp!

Grtz
Glenn
 

Bijlagen

  • Uitbetaling premie(wieter).xlsx
    45,1 KB · Weergaven: 31
Glenn, klopt dit?
Feestdag ma-vr = normale percentages (100% dag en 135% nacht) + 1 dag recup aan dezelfde tarieven.
Feestdag za zo = 150% dag en 160% nacht + 1 dag recup ook aan deze tarieven.

Indien dit klopt, heb ik wel wat aanpassingswerk (dus geduld)
 
Hallo Wieter,

Klopt inderdaad. En geen probleem, ik ben al blij dat je me helpt! Ik kan de file voorlopig al zo gebruiken en vul de feestdagen manueel aan ;-)

Grtz
Glenn
 
Hallo Glenn,
Nu is het aan U, TESTEN MAAR!!!!!
Als ik het allemaal goed begrepen heb, zouden de percentages moeten kloppen.

Let op. Aan het bestand is heel wat gewijzigd.
In het Blad[Invoer] kan je(moet niet), de werktijden invullen zonder dubbele punt. (dat scheelt heel wat invoertijd).
Op het Blad[Invoer] staan nu ook een knop(Opslaan), als je daar op klikt, worden de belangrijkste gegevens bewaard in het Blad[Database].
Het blad[Invoer] wordt dan leeg gemaakt, en de maand wordt met 1 opgehoogd.

Op het blad[Database] kan je met de 3 comboboxen(jaar,maand,dag) een bepaalde datum terugvinden (als je die info nodig zou hebben).

In het blad[Pivot] staat een draaitabel, waarin je de maandtotalen kan zien.

Je probeert het allemaal maar eens. Problemen: vraag maar.
 

Bijlagen

  • Draaitabel,urenreg1.xlsm
    96,2 KB · Weergaven: 39
Bijkomend iets ;-)
Indien ik klik op "maand opslaan", slaat hij alles op in een andere sheet, ook al staat er geen data ingevuld. Kan dit opgenomen worden in de macro? Indien de mensen verlof hebben en bv maar één week gewerkt hebben, komen deze lijnen als blanco in mijn database opgeslagen, waardoor ik de lijnen moet verwijderen... De mensen werken niet elke dag, er kan al een een dag of meerdere tussen zitten waar zij niet werken, aangezien ze ook in het weekend werken.

Thx!
 
Laatst bewerkt:
Om alleen de gewerkte dagen over te zetten naar de database, lukt me niet.
Ik heb geprobeerd om een soort van voorwaarde in te bouwen in de code, maar dit leidde tot niets.
De code is van VenA, en hierin wordt de functie [EoMonth] gebruikt (end of month).
Die functie heb ik nog nooit gebruikt, en ik kan er dus niet mee werken.
Code:
Sub VenA()
  With Sheets("Invoer")
    .Unprotect
    x = Day(Application.EoMonth(.Cells(4, 1), 0))
    Sheets("Database").ListObjects(1).ListRows.Add.Range.Resize(x, 18) = .Cells(3, 1).CurrentRegion.Offset(3).Resize(x, 18).Value
    .Range("C4:F34").ClearContents
    .Range("B1") = .Range("B1") - (.Range("B2") = 12)
    .Range("B2") = .Range("B2") + IIf(.Range("B2") = 12, -11, 1)
    .Protect
    ThisWorkbook.RefreshAll
  End With
End Sub
Eigenlijk storen die paar lege regels toch niet.
Je kan (via de ComboBoxen) zelfs terug vinden of iemand op een bepaalde dag gewerkt heeft of niet.

Daarnaast vermoedde ik dat de recup-uren ook moeten meegenomen worden in de draaitabel.
Daarom heb ik het bestand nog maar eens aangepast.

Misschien schiet VenA wel ter hulp voor wat betreft, die lege regels.
 

Bijlagen

  • Draaitabel,urenreg2.xlsm
    101,9 KB · Weergaven: 45
Gewoon de lege rijen verwijderen.
Code:
With Sheets("Database").ListObjects(1)
      .ListRows.Add.Range.Resize(x, 18) = .Parent.Cells(3, 1).CurrentRegion.Offset(3).Resize(x, 18).Value
      On Error Resume Next 'Als er geen lege cellen in kolom 3 zijn
      .Range.Columns(3).SpecialCells(4).EntireRow.Delete
    End With
 
Hallo VenA,
Ik heb op alle mogelijke manieren geprobeerd om jouw suggestie te integreren in de code.
De rijen met een lege cel in kolom(3) worden niet weg gehaald.
Omdat mijn VBA kennis mijlen ver van jouw niveau zit, doe ik zeker iets verkeerd.
Code:
Sub VenA()
  With Sheets("Invoer")
    .Unprotect
    x = Day(Application.EoMonth(.Cells(4, 1), 0))
    With Sheets("Database").ListObjects(1)
      .ListRows.Add.Range.Resize(x, 18) = Sheets("Invoer").Cells(3, 1).CurrentRegion.Offset(3).Resize(x, 18).Value
      On Error Resume Next 'Als er geen lege cellen in kolom 3 zijn
      .Range.Columns(3).SpecialCells(4).EntireRow.Delete
    End With
    .Range("C4:F34").ClearContents
    .Range("B1") = .Range("B1") - (.Range("B2") = 12)
    .Range("B2") = .Range("B2") + IIf(.Range("B2") = 12, -11, 1)
    .Protect
    ThisWorkbook.RefreshAll
  End With
End Sub
 
Laatst bewerkt:
Dan doen we het anders.

Code:
Sub VenA()
  With Sheets("Invoer")
    .Unprotect
    x = Day(Application.EoMonth(.Cells(4, 1), 0))
    With Sheets("Database").ListObjects(1)
      .ListRows.Add.Range.Resize(x, 18) = Sheets("Invoer").Cells(3, 1).CurrentRegion.Offset(3).Resize(x, 18).Value
      .Range.AutoFilter 3, "="
      .Range.Offset(1).EntireRow.Delete
      .Range.AutoFilter 3
    End With
    Application.EnableEvents = False
    .Range("C4:F34").ClearContents
    .Range("B1") = .Range("B1") - (.Range("B2") = 12)
    .Range("B2") = .Range("B2") + IIf(.Range("B2") = 12, -11, 1)
    Application.EnableEvents = True
    .Protect
    ThisWorkbook.RefreshAll
  End With
End Sub
 
Natuurlijk!!. Met filteren en dan verwijderen.
Hoe vind je het toch altijd, VenA?

T.a.v. Glenn
Hierbij de code van VenA in de bijlage.
 

Bijlagen

  • Draaitabel,urenreg2.xlsm
    100,4 KB · Weergaven: 51
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan