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

complexe voorwaardelijke opmaak

Status
Niet open voor verdere reacties.

suske04

Gebruiker
Lid geworden
7 sep 2001
Berichten
99
Ik ben nog steeds aan het spelen om tot een zo simpel mogelijk manier te komen voor onderstaande.

In week 1 krijg ik order 1 t/m 5 en staan tabblad wk1

In week 2 (nieuw tabblad wk2) komen daarbij order 6 t/m 8, deze orders komen dus niet voor in tabblad wk 1 en wil ik vet hebben. Verder zijn de order 2 t/m 4 afgewerkt en dienen als zodanig in tabblad wk1 rood gemarkeerd te worden als zijnde afgewerkt

In week 3 (wederom nieuw tabblad wk3) komen de orders 9 en 10 erbij en komen dus niet voor in tabblad wk 2 en wil ik dus weer vet hebben. Maar nu komt het de orders 5 ,7 en 8 zijn afgewerkt en dienen in tabblad wk2 rood gemarkeerd te worden (echter deze orders hebben al een voorwaardelijke opmaak omdat deze in wk 2 vet gemaakt zijn omdat deze er nieuw bijgekomen zijn tov wk1 deze dient dus verwijderd te worden omdat er nu een nieuwe voorwaardelijke opmaak regels gelden.

En zo volgt elke week weer een nieuwe tabblad

Wat voor adviezen hebben jullie in deze om nieuwe en afgewerkte orders duidelijk herkenbaar te maken
 

Bijlagen

Je kan voorwaardelijke opmaak niet gebruiken met waarden uit andere bladen. Hiervoor moet je of een hulpkolom gaan gebruiken of overstappen naar VBA.
 
De oplossing hoeft van mij niet perse mbv voorwaardelijke opmaak.
een andree weg is mischien dat in een kolom ernaast een indicatie kan worden weggezet afgewerkt of nieuw.

Misschien dat iemand mij op weg kan helpen of is mijn wens onoplosbaar
 
Dat van die voorwaardelijke opmaak kan volgens mij het beste met een macro. Maar ik begrijp je niet echt. Als je blad wk2 aanmaakt moet hij dan automatisch doortellen naar wk2? Dus als in wk1 5 orders zijn verwerkt, dan moet hij in wk2 automatisch met order 6 beginnen? Of vul je dat zelf van te voren in?

Als je achter elke order in een cel nou een formule zet bijvoorbeeld:

=ALS(wk2!$A$1<>"";1;0)

en dan als voorwaardelijke opmaak:

=$B$2=1
 
Bedankt voor de reactie.

Ik vul zelf de order nummers per week in.

Elke week kijk ik in SAP systeem welke orders er openstaan.
Deze order nrs transporteer ik naar EXCEL.
Wat ik nu wil zijn is:
welke orders zijn er afgewerkt en deze moeten in de tabblad van een week ervoor gemarkeerd worden en verder in de week dat ik de order opvraag moeten de nieuw bijgekomen order gemarkeerd worden.
Omdat dit een wekelijks herhalend is, zou ik dit graag met een druk op de knop zichtbaar hebben

Kijk eens naar het voorbeeld wat bijgesloten is in eerste draadje
 
Dat zou toch echt met een VBA code moeten ben ik bang, maar daar ben ik niet zo'n ster in. Moet je even wachten tot dat Demeter of Wigi reageerd, zij zijn daar meesters in.
 
VBA hulp Demeter of Wigi

In ieder geval bedankt Excelnoob, nu maar hopen dat Demeter of Wigi reageert
 
Moet je even wachten tot dat Demeter of Wigi reageerd, zij zijn daar meesters in.
Ik voel me zeer vereerd maar ik wil me zeker niet op dezelfde hoogte prijzen als Wigi. Hij is toch echt veel meer bekwaam in VBA dan ik. Maar wil toch je compliment aannemen, Bedankt.

Hier een snelle voorzet van links(terwijl ik rechts ben :)):
Code:
Sub controleren()
Dim c As Range
Dim x As Long

Application.ScreenUpdating = False

    For x = 1 To Sheets.Count
        If x = 1 Then
            For Each c In Sheets(x).Range("A1:A10")
                If Sheets(x + 1).Range("A1:A10").Find(c.Value) Is Nothing Then c.Font.ColorIndex = 3
            Next
        ElseIf x = Sheets.Count Then
            For Each c In Sheets(x).Range("A1:A10")
                If Sheets(x - 1).Range("A1:A10").Find(c.Value) Is Nothing Then c.Font.Bold = True
            Next
        Else
            For Each c In Sheets(x).Range("A1:A10")
                If Sheets(x + 1).Range("A1:A10").Find(c.Value) Is Nothing Then c.Font.ColorIndex = 3
                If Sheets(x - 1).Range("A1:A10").Find(c.Value) Is Nothing Then c.Font.Bold = True
            Next
        End If
    Next

Application.ScreenUpdating = True

End Sub

Graag hoor ik van je hoe deze code aan je eisen voldoet en wat er nog aan schort.
Hij loopt nu al je werkbladen door en veranderd de tekst in rood en/of bold. Heb zelf niet de tijd om te controleren of dit geheel goed gaat.
 
Heel erg bedankt voor de moeite.
Echter ik heb totaal geen kaas gegeten van VBA en weet dus niet waar ik moet beginnen.
Ik hoop dat je de moeite wilt nemen de code in de Xl file te verwerken en wat uitleg wilt geven

Alvast bedankt
 
Dan wordt het nu tijd om er iets van op te gaan steken :).

Open je file in Excel.
Druk op alt + F11.
Nu wordt de VBA-editor geopent.
Rechtermuisknop op een van de Bladen aan de linkerkant van je scherm.
Kies hier invoegen / module.
In het witte scherm aan de rechterkant kunnen we nu een code gaan schijven / plakken.
Plak de door mij geposte code in dit witte vlak.
Sluit nu de VBA-editor af of druk nogmaals op alt + f11.
In Excel kies je nu:
Extra / macro / macro's
in het opkomende scherm kies je de macro met de naam controleren (tevens de enige welke gekozen kan worden).
Nu wordt de macro uitgevoerd.

Succes
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan