1.
Op het blad Intake staat in A1:B13 een lijst met maanden en nummers.
Logisch is dat maanden en maandnummers op elkaar zijn afgestemd (jan =1, febr = 2, enz.). Dat is bij jou niet het geval in Blad1, Blad2, en Blad4 (jan =2, febr =3, enz). Wil je dat echt zo? Als je dat zo wil houden en je wil de maanden op alle bladen synchroniseren met de maand op het voorblad, dan moet je met dat maandverschil rekening houden. Gebruikers zullen het onlogisch vinden dat als ze via de keuzelijst een maand kiezen, daar niet het bijbehorende maandnummer bij verschijnt. In de keuzelijst moet je het woord "maand" ook niet opnemen.
Ik raad je dus aan om op het blad Intake die tabel aan te passen. Als je dat doet, dan moeten ook in Blad1, Blad2, en Blad4 de functies in F28 worden aangepast.
In die functies staat (denk ik) een fout. Ze beginnen met:
ALS(A1=2;...;ALS(A1=3;... enz, maar na ALS(A1=6;... komt NIET ALS(A1=
7;... maar ALS(A1=
33;... Is dat juist?
Als 33 inderdaad door 7 moet worden vervangen, dan kan voor die functie een veel kortere in de plaats komen. Ik zal daarmee wachten tot je op dit bericht hebt geantwoord.
2.
Als op de bladen Blad1, Blad2, Blad4 in A1 de maandnummers moeten vershijnen, stel die cellen (voor zover dat nog niet het geval is) in als "standaard".
3.
Op alle bladen hetzelfde maandnummer instellen in A1 kan via onderstaande macro. Die macro geldt voor het bestand dat je hier als voorbeeld plaatste. In een ander bestand kunnen de bladen anders gerangschikt zijn en het kan zijn dat de code dan moet worden aangepast. Die macro geldt in de veronderstelling dat op Blad1, Blad2, en Blad4 maandnaam en maandnummer op elkaar zijn afgestemd. Daarvoor moet je dus eerst de tabel op het blad Intake aanpassen, zoals in punt 1 beschreven.
Code:
Sub macro1()
Dim x As Integer
For x = 2 To 4
With Worksheets(x)
.Range("A1").Value = Month(Worksheets(1).Range("D19"))
End With
Next x
End Sub
Wil je toch dat in Blad1, Blad2, en Blad4, het maandnummer 1 hoger is dan het logische maandnummer, wijzig dan regel 5 van de macro als volgt:
Code:
.Range("A1").Value = Month(Worksheets(1).Range("D19"))+1
Succes er mee.