Hallo,
Ik heb een sub geschreven om in een planningsoverzicht aan te geven wie wanneer vakantie heeft. Helaas gaat er bij het uitvoeren iets mis en ik kan niet vinden waar dat in zit. Wie kan me helpen?
Het gaat om het volgende:
Ik heb twee tabbladen 1 met een planning van meerder filialen en 1 met een lijst van opgegeven vakanties.
De Sub zou in het tabblad van de planning alle dagen moeten markeren die in de lijst voorkomen.
Ongeacht welke data ik invul op het tabblad met opgegeven vakanties, gaan de bovenste twee altijd goed, maar daarna gaat het mis.
Het is me opgevallen dat het misgaat bij lijn 25
Bij de eerste twee keer dat de code hier langs komt vindt hij keurig een cel met "Week *" boven de start cel, maar vanaf de derde keer pakt hij de eerst volgende cel onder de start cel. Ik verwacht dus dat het daar in zit, maar krijg het niet voor elkaar om het op te lossen. In de bijlage een demo bestand met sub.
Ter info:
Ik heb gebruik gemaakt van de ".find" methode omdat de planning voor verschillende filialen niet altijd even veel weken bevat.
Daarnaast ben ik nog bezig met het uitsluiten van de mogelijkheden dat iemand niet in de planning staat op het moment dat hij wel vakantie heeft, dit levert momenteel een verkeerd resultaat op. (bv. Piet heeft vakantie in week 11 en 12, maar in week 12 staat hij niet op het rooster maar week 13 wel. Dan word er nu week 11 en 13 gemarkeerd.
Bedankt.
Ik heb een sub geschreven om in een planningsoverzicht aan te geven wie wanneer vakantie heeft. Helaas gaat er bij het uitvoeren iets mis en ik kan niet vinden waar dat in zit. Wie kan me helpen?
Het gaat om het volgende:
Ik heb twee tabbladen 1 met een planning van meerder filialen en 1 met een lijst van opgegeven vakanties.
De Sub zou in het tabblad van de planning alle dagen moeten markeren die in de lijst voorkomen.
Ongeacht welke data ik invul op het tabblad met opgegeven vakanties, gaan de bovenste twee altijd goed, maar daarna gaat het mis.
Het is me opgevallen dat het misgaat bij lijn 25
Code:
Set H = Sheets(1).Range("A:A").Find("Week *", after:=cell(G.Row - 1, 1), LookAt:=xlWhole, SearchDirection:=xlPrevious)
Ter info:
Ik heb gebruik gemaakt van de ".find" methode omdat de planning voor verschillende filialen niet altijd even veel weken bevat.
Daarnaast ben ik nog bezig met het uitsluiten van de mogelijkheden dat iemand niet in de planning staat op het moment dat hij wel vakantie heeft, dit levert momenteel een verkeerd resultaat op. (bv. Piet heeft vakantie in week 11 en 12, maar in week 12 staat hij niet op het rooster maar week 13 wel. Dan word er nu week 11 en 13 gemarkeerd.
Bedankt.