Ik had gehoopt dat @Warme bakkertje mijn bovenstaande vraag nog zou lezen, maar ik vermoed dat hij geen abbo meer heeft op dit topic. Mogelijk dat iemand anders mij nog van dienst kan zijn.
In mijn bestand worden, middels een code, werkbladen aangemaakt. Die werkbladen krijgen hun naam met behulp van deze formule:
Het resultaat van deze formule zou kunnen zijn:
Week 17 Jan Jansen43
Hierin is "43" een volgnummer wat bij de naam "Jan Jansen" hoort.
Over het algemeen werkt alles naar behoren, behalve als ik weeknummer 16 gebruik, of een weeknummer eindigend op een 7 (7, 17, 27 enz.). In dat geval worden er ook gegevens geplaatst bij de werknemer met het volgnummer 16 of 7, terwijl dat, in dit voorbeeld, alleen zou moeten gebeuren bij de werknemer met volgnummer 43, Jan Jansen dus.
Gek genoeg gebeurt dat dus niet als ik gebruik maak van andere weeknummers.
De code die de gegevens bij de juiste persoon zou moeten plaatsen is als volgt:
Wie kan hier iets van maken?
In mijn bestand worden, middels een code, werkbladen aangemaakt. Die werkbladen krijgen hun naam met behulp van deze formule:
Code:
=TEKST.SAMENVOEGEN("Week ";B1;" ";F1;INDEX('NAW-gegevens'!$A:$A;VERGELIJKEN($F$1;'NAW-gegevens'!$B:$B;0)))
Het resultaat van deze formule zou kunnen zijn:
Week 17 Jan Jansen43
Hierin is "43" een volgnummer wat bij de naam "Jan Jansen" hoort.
Over het algemeen werkt alles naar behoren, behalve als ik weeknummer 16 gebruik, of een weeknummer eindigend op een 7 (7, 17, 27 enz.). In dat geval worden er ook gegevens geplaatst bij de werknemer met het volgnummer 16 of 7, terwijl dat, in dit voorbeeld, alleen zou moeten gebeuren bij de werknemer met volgnummer 43, Jan Jansen dus.
Gek genoeg gebeurt dat dus niet als ik gebruik maak van andere weeknummers.
De code die de gegevens bij de juiste persoon zou moeten plaatsen is als volgt:
Code:
Sub tst()
For Each Sh In Sheets
c00 = c00 & "|" & Sh.Name
Next
With Sheets("Verzamelblad")
For Each cl In .Range("B2:B" & .Cells(Rows.Count, 2).End(xlUp).Row)
sq = Split(cl, " ")
ReDim sn(1)
For Each it In Filter(Split(c00, "|"), sq(UBound(sq)) & cl.Offset(, -1))
For j = 0 To 1
sn(j) = sn(j) + Sheets(it).Range("L115").Offset(, j).Value
Next
Next
cl.Offset(, 1).Resize(, 2) = sn
Next
End With
End Sub
Wie kan hier iets van maken?