• 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.

voorwaardelijke opmaak 1x in de 3 weken

Status
Niet open voor verdere reacties.

Aanbod

Gebruiker
Lid geworden
28 okt 2006
Berichten
163
Hallo,

Ik ben met een planning bezig waar op de zondag 1x in de 3 weken iemand moet werken. Ik heb de volgende formule al gehad:
Code:
=EN(OF(Data!G4="A";EN(Data!G4="E";IS.EVEN(B$2));EN(Data!G4="O";IS.ONEVEN(B$2)));ISFOUT(VERGELIJKEN(B$4;Data!$A$4:$A$51;0)))
Moet wel voor iedere week en iedere schoonmaker wel een regel aanmaken maar het werkt prima.

Deze wil ik uitbreiden met dat als ik een bepaalde code (A1, A2 of A3) gebruik deze in de voorwaardelijke opmaak dan ook 1x in de 3 weken een grijs (kan ook een andere kleur zijn) wordt gemaakt.
Maar...er zijn ook nog vakantiedagen. Deze heb ik op het tabblad data onder elkaar gezet deze dagen mogen dan geen gekleurd vakje opleveren.

Een voorbeeld bestand Bekijk bijlage 160309 helpmij.xlsx heb ik bijgevoegd. Ik heb in dit bestand verschillende kleuren gebruikt om de regels direct te kunnen onderscheiden waar deze thuis horen. De kleuren worden nadat het werkt alle omgezet in lichtgrijs.

Kortom:
1. Er moet gekeken worden op het tabblad data welke letter erin staat.
2. Er moet gekeken worden op het tabblad data welke lettercode erin staat (A1, A2 of A3) dan mag deze maar 1x in de 3 weken het hokje vullen met een kleur. Beginnend in de week wanneer de planning begint. A2 begint in de tweede week van de planning en dan om de 3 weken. En je raad het al A3 begint in de 3e week en dan om de 3 weken.
3. Er moet gekeken worden op het tabblad data of er een vakantiedag tussen staat. En moet dus het voorgaande "overrulen" en dus een leeg vak weergeven.


Bedankt alvast voor de moeite.

Groetjes
 
Laatst bewerkt:
Hallo,

Waarschijnlijk hebben zich hier al een paar techneuten in verdiept. Maar is dit haalbaar zoals ik de wens heb??

Groet,
 
misschen heb je hier iets aan

wel met vba, als je zonder vba wil moet je bij de echte cracks zijn . voor mij wordt het dan te ingewikkeld.

let op ik heb je tabellen een naam gegeven.
 

Bijlagen

Toppie.....dat je dit in VBA hebt gemaakt.

Kunnen de letters ook eruit??

Volgens mij kun je die regels "uitzetten" met een speciaal teken ervoor toch? Zodat je alleen een grijs vlak overhoudt.

Code:
Function MijnCode(Persoon, Datum, BeginWeek, Tabel As Range, VrijTabel As Range)
    Dim DagVanDeWeek As Integer, PersoonInTabel As Range, TabelCode As String
    Dim WeekNummer As Integer, Week3 As Integer, Temp As Range
    MijnCode = ""
    DagVanDeWeek = DatePart("w", Datum, vbMonday, vbUseSystem)
    WeekNummer = DatePart("ww", Datum, vbMonday, vbUseSystem)
    Week3 = ((WeekNummer - BeginWeek) Mod 3) + 1
    Set PersoonInTabel = Tabel.Columns(1).Cells.Find(Persoon)
    If PersoonInTabel Is Nothing Then
        MijnCode = "?": Exit Function
    Else
        TabelCode = PersoonInTabel.Offset(, DagVanDeWeek)
    End If
    [COLOR="#FF0000"]With WorksheetFunction
     Select Case TabelCode
        Case "A": MijnCode = "A"
        Case "O": If .IsOdd(WeekNummer - BeginWeek + 1) Then MijnCode = "O"
        Case "E": If .IsEven(WeekNummer - BeginWeek + 1) Then MijnCode = "E"
        Case "A1": If Week3 = 1 Then MijnCode = "A1"
        Case "A2": If Week3 = 2 Then MijnCode = "A2"
        Case "A3": If Week3 = 3 Then MijnCode = "A3"
    End Select
    End With[/COLOR]
Set PersoonInTabel = VrijTabel.Rows(1).Cells.Find(Persoon)
    If PersoonInTabel Is Nothing Then Exit Function
    For Each Temp In Intersect(PersoonInTabel.EntireColumn, VrijTabel)
        If Datum = Temp Then MijnCode = "V": Exit Function
    Next
End Function

Als ik het goed heb zou ik in het rood ook eventueel kunnen weghalen. Ben geen held in VBA

Het is dus alleen de bedoeling dus dat er een grijs vlak in de planning komt te staan en geen letter/cijfers.


Bedankt alvast
 
Laatst bewerkt:
Nog even een aanvulling.....

Het is de bedoeling dat er alleen een grijsvlak komt te staan. Blijvend!! En ik ga dan met een X bepalen wie er die dag moet werken.
Voor mij is het grijze vlak alleen een "teken" dat die persoon op die dag kan werken.
Daar er nu een formule in staat wordt deze formule verwijderd als ik hier iets in plaats de "X" dus
En dat probleem heb ik dus niet met voorwaardelijke opmaak.
Kun je dit ook in VBA zo maken??

Anders doe ik bij deze een beroep op de echte cracks. In de hoop dat het via voorwaardelijke opmaak kan.
 
Oke. Dan ga ik daar van het weekend eens mee stoeien. Bedankt tot zover.
 
Hallo,

Ik raak de draad volledig kwijt......

De bedoeling is:
1. Er moet gekeken worden op het tabblad data welke letter erin staat.
2. Er moet gekeken worden op het tabblad data welke lettercode erin staat (A1, A2 of A3) dan mag deze maar 1x in de 3 weken het hokje vullen met een kleur. Beginnend in de week wanneer de planning begint. A2 begint in de tweede week van de planning en dan om de 3 weken. En je raad het al A3 begint in de 3e week en dan om de 3 weken.
3. Er moet gekeken worden op het tabblad data of er een vakantiedag tussen staat. En moet dus het voorgaande "overrulen" en dus een leeg vak weergeven.
4. Als aan bovenstaande voorwaarden is voldaan en het is geen vakantie is het een grijs vakje.
5. Dit grijze vakje is voor mij een teken dat er op die dag die schoonmaakster ingepland kan worden. Dit kan betekenen dat maar 1 schoonmaakster kan. Maar dit kunnen er ook 2 of 3 zijn.
6. Degene die moet werken zet ik zelf een X neer. Dus 1 keer een X. En de andere schoonmaaksters zijn dan niet nodig.
7. Zo ziet de schoonmaakster ook wie wel of niet kan ruilen als zij niet kan. Dit dus aan de hand van het grijze vlakje.
 
Laatst bewerkt:
wel geprobeerd inmiddels. Maar geeft foutmelding bij het openen.

Melding: Er zijn onvoldoende systeembronnen voor een volledige weergave

Wat het inhoud weet ik niet....De vorige bestanden kon ik zonder probleem openen
 
Ik gebruik ook 2010.
Dus kan daar niet aan liggen.

Groet,
Andre
 
Zijn er nog "cracks" die dit kunnen oplossen in de voorwaardelijke opmaak.
Als ik eenmaal begrijp hoe het in de voorwaardelijke opmaak gaat dan zou ik dit zelf kunnen toepassen.
Wie o wie durft de uitdaging aan.......

Ik wil absoluut niet Sylvester - Ponte afkraken. Hij doet zijn uiterste best om toch mij te helpen. Maar van VBA snap ik niks van.
 
Dat er onvoldoende systeembronnen zijn:d Eigenlijk staat de dat er geen ruimte in het geheugen is om een bewerking uit te voeren. Mogelijke oorzaken zijn te divers om op te sommen. Mijn ervaring is dat na het wegklikken van deze melding toch het gene gedaan wordt van wat ik er van verwacht had. Wel met enige vertraging maar dat lijkt ook niet meer dan logisch na zo'n melding.

Jouw bestandje geeft hier geen problemen bij het openen en in de code zie ik ook niets wat een repeterende aanvraag doet waardoor het ook vast kan lopen.
 
VenA, bedankt voor de toelichting.

Andre, hoe groot wordt je planning? je hebt nu al te weinig ruimte op je computer.
voorwaardelijke opmaak vraagt bij elke wijziging een flinke rekenplartij.
misschien is het handiger om vba de kleurtjes te laten toevoegen, elke keer dat je het data sheet verlaat.
 
Ik zal naar andere mogelijkheden moeten kijken. Ik wil jullie heel hartelijk danken voor de moeite die jullie erin hebben gestoken. Wordt vervolgd..... Zet mijn vraag voorlopig even op opgelost. En sorry voor de late reactie....
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan