JoostHuizing
Gebruiker
- Lid geworden
- 11 aug 2011
- Berichten
- 25
Goedemiddag,
Ben alweer even niet meer bezig geweest met VBA en heb op basis van wat zaken die ik o.a. hier heb gevonden en in andere documenten heb verwerkt wat geprobeerd, maar zit denk niet in de juiste richting. Hopelijk kunnen jullie mij op weg helpen. Zie door de bomen het bos met de match en vlookup e.d. niet meer
Ik ben bezig met het maken van een urenregistratie en wil de uren die iemand voor een week schrijft (tabblad Urenregistratie per week), wegschrijven in een tabblad per medewerker (Urenreg. p. maand - "Naam medewerker") waar de totalen van alle weken komen te staan.
Ik heb daar een paar dingen voor ogen:
- VBA kiest het juiste tabblad op basis van de naam van de medewerker (B2 in tabblad Urenregistratie per week);
- Wanneer iemand bij een dag de uren invult, dan schrijft hij het totaal van die week (in kolom C) weg naar het tabblad Urenreg. p. maand - "Naam medewerker" (In dit geval Eelco en Joost al aangemaakt);
- Hierbij moet hij volgens mij zoeken naar de regel waarin het onderwerp uit kolom A met elkaar matcht en op basis van weeknummer (B4 in Urenregistratie per week) moet hij de juiste kolom selecteren in Urenreg. p. maand - "Naam medewerker".
Ik weet niet of ik goed zit met het selecteren van het juiste tabblad, of ik de matches en vlookup's goed heb en of ik wel op een juiste manier heb aangegeven uit welke cel vba de waarde moet halen. Kortom: HELP! :d
De code die ik nu heb is:
Bekijk bijlage Test.xlsm
Alvast bedankt voor jullie hulp!
Groeten,
Joost
Ben alweer even niet meer bezig geweest met VBA en heb op basis van wat zaken die ik o.a. hier heb gevonden en in andere documenten heb verwerkt wat geprobeerd, maar zit denk niet in de juiste richting. Hopelijk kunnen jullie mij op weg helpen. Zie door de bomen het bos met de match en vlookup e.d. niet meer
Ik ben bezig met het maken van een urenregistratie en wil de uren die iemand voor een week schrijft (tabblad Urenregistratie per week), wegschrijven in een tabblad per medewerker (Urenreg. p. maand - "Naam medewerker") waar de totalen van alle weken komen te staan.
Ik heb daar een paar dingen voor ogen:
- VBA kiest het juiste tabblad op basis van de naam van de medewerker (B2 in tabblad Urenregistratie per week);
- Wanneer iemand bij een dag de uren invult, dan schrijft hij het totaal van die week (in kolom C) weg naar het tabblad Urenreg. p. maand - "Naam medewerker" (In dit geval Eelco en Joost al aangemaakt);
- Hierbij moet hij volgens mij zoeken naar de regel waarin het onderwerp uit kolom A met elkaar matcht en op basis van weeknummer (B4 in Urenregistratie per week) moet hij de juiste kolom selecteren in Urenreg. p. maand - "Naam medewerker".
Ik weet niet of ik goed zit met het selecteren van het juiste tabblad, of ik de matches en vlookup's goed heb en of ik wel op een juiste manier heb aangegeven uit welke cel vba de waarde moet halen. Kortom: HELP! :d
De code die ik nu heb is:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.ScreenUpdating = False
Dim week As Range
Dim werkblad As Range
If Not Intersect(Target, Range("D8:H" & Rows.Count)) Is Nothing Then
week = Range("B4")
werkblad = Sheets("Urenreg. p. maand - " & [B2])
With Sheets(werkblad)
.Cells(WorksheetFunction.VLookup(Target.Offset(0, "A"), .Range("A24:A" & Rows.Count), 1, 1), WorksheetFunction.Match(week, .Range("D23:BD23"), 0)) = Target.Offset(0, "C")
End With
End If
End Sub
Bekijk bijlage Test.xlsm
Alvast bedankt voor jullie hulp!
Groeten,
Joost