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

Tabkleur veranderen

Status
Niet open voor verdere reacties.

JoGoSoft

Gebruiker
Lid geworden
6 sep 2007
Berichten
13
Hallo,
Ik heb een bestand met de dagen van een hele maand.
Hierbij wil ik de tabkleur van de weekeinden een andere kleur geven. (VBA).
(zaterdag en zondag moeten rode tabs opleveren).Bekijk bijlage Tabkleur.xls
Op elke tabblad staat de dag aanduiding in cel B1.
De kleuren van de tabs moeten automatisch aanpassen aan deze dag.
Iedere maand veranderen de tabs door op tabblad 1 de begin datum aan te passen.
Dus elke maand verspringt het weekeinde.
Hoe kan ik deze automatisch laten aanpassen wanneer ik de begin datum verander?
Elke hulp is bij deze welkom

jogosoft
 
in iedere cel a3 de formule
Code:
=WEEKDAG(B1)
in Thisworkbook
Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
aantal_bladen = Worksheets.Count
For n = 1 To aantal_bladen
Sheets(n).Activate
 If Cells(1, 3) = 1 Or Cells(1, 3) = 7 Then
 Sheets(n).Tab.ColorIndex = 3
 Else
 Sheets(n).Tab.ColorIndex = 27
 End If
Next n
End Sub

gr wim
 
Laatst bewerkt:
Hallo Wiki,

Alles aangepast en ingevoerd als door jou aangegeven.
Alle tabs worden alleen maar geel, dus de weekeinden krijgen geen andere kleur.
Zie ik iets over het hoofd?

Bekijk bijlage Tabkleur.xls

Groet,

Jogosoft
 
JoGoSoft

De rode getallen staan verkeerd om.

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
aantal_bladen = Worksheets.Count
For n = 1 To aantal_bladen
Sheets(n).Activate
 If Cells([COLOR="red"]3, 1[/COLOR]) = 1 Or Cells([COLOR="red"]3, 1[/COLOR]) = 7 Then
 Sheets(n).Tab.ColorIndex = 33
 Else
 Sheets(n).Tab.ColorIndex = 27
 End If
Next n
End Sub
 
JoGoSoft

Je kunt ook de hulpcellen in B1 en A3 vergeten.
Het onderstaande kijkt naar de datum in cel A1 en bepaald aan de hand daarvan de kleur van het tabblad.
Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
aantal_bladen = Worksheets.Count
For n = 1 To aantal_bladen
Sheets(n).Activate
 If Weekday(Cells(1, 1), 2) >= 6 Then
 Sheets(n).Tab.ColorIndex = 3
 Else
 Sheets(n).Tab.ColorIndex = 27
 End If
Next n
End Sub
 
sorry,

had zelf c1 gebruikt en a3 getypt:eek:

gr wim
 
Heren,

Dit had ik zelf eigenlijk ook moeten zien, maar zoals gewoonlijk, hoe langer men staart des te minder men ziet.
Alle twee de oplossingen zijn geweldig.
Alvast bedankt en bij deze zet ik de vraag als opgelost.

Groet,

Jogosoft
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan