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

Checken of ingevoerde datum een maandag is!

Status
Niet open voor verdere reacties.

Masjimo

Gebruiker
Lid geworden
23 dec 2010
Berichten
165
Ik wil bij de invoer van een datum in Cell D3 checken of de ingevoerde datum een maandag betreft.

Daarvoor heb ik de volgende VBA geschreven, maar het werkt niet.....

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range
Dim Output As Integer

Set r = Abs((Range("D3").Value - 2) / 7) - ((Range("D3") - 2) / 7)

If r <> 0 Then
Output = MsgBox("Deze datum valt niet op een maandag!", vbOK)
Range("D3").clearcontent
Else
Exit Sub
End Sub

Wat doe ik fout?:eek:
 
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$3" Then
 If Weekday(Target.Value, 2) = 1 Then
   MsgBox "Maandag"
  End If
 End If
End Sub
 
Er volgt de mededeling: onduidelijke naam gedetecteerd: Worksheet_Change

Code:
Private Sub Worksheet_Change(ByVal Target As Range

Er is nog een privatesub actief....

Wat is de oorzaak?:confused:
 
Zet je eigen code als 'opmerking'.
 
Als enige Private-sub werkt het wel.......

Maar ik wil die andere ok niet kwijt....

Twee Private Sub Worksheet_Change werkt dat niet?? (Op een werkblad)
 
Nee,
Je moet met onderdelen van mijn code proberen die van jou te maken.
 
Je kan dus geen twee Worksheet_Change naast elkaar in 1 werkblad gebruiken??

Ik ga het proberen....
 
Nee, dat kan niet.
 
misschien formule in data validatie gebruiken voor check op invoer van een maandag:
=WEEKDAY(D3;2)=1
 
Hij werkt inmiddels, bedankt!!

Moest de VBA wel vooraan in de Private Sub zetten....
 
Waarom zou je niet een lijst met geldige (maan)dagen maken, waaruit de gebruiker via validation kan kiezen ?
 
Waarom zou je niet een lijst met geldige (maan)dagen maken, waaruit de gebruiker via validation kan kiezen ?

Voorkomen is beter dan -achteraf- genezen.
 
@SNB
Uit een lijst van alle maandagen van een jaar kiezen lijkt mij ook niet erg handig.
Voor jou is het denk ik een koud kunstje om als je een andere dag invult dat een VBA routine deze dan automatisch omzet in de maandag daarvoor.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan