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

Volgende werkdag ingeven

Status
Niet open voor verdere reacties.

stefano

Gebruiker
Lid geworden
22 mei 2004
Berichten
865
Bestaat er een functie die de volgende werkdag geeft?

op dinsdag 21/02/2017 zou 22/02/2017

en

op vrijdag 24/02/2017 zou 27/02/2017 moeten verschijnen.

Kan dit ?

Ik wil dit gebruik in een code

Code:
Datum = InputBox("Datum van de levering", "Info voor certificaat", [COLOR="#FF0000"]Date + 1[/COLOR])
 
Maak je toch zelf? Even in een lusje bepalen of "morgen" dan weekday 6 of 7 is...
Zo nee, lus verlaten en je hebt je geldige volgende werkdag.
 
Probeer het eens zo
Code:
Sub dotchie()
Dim dotchie
Dim stefano
dotchie = dotchiewerkdag(Date)
stefano = InputBox("Datum van de levering", "Info voor certificaat", dotchie)
End Sub
Function dotchiewerkdag(dtTemp As Date)
dotchiewerkdag = dtTemp + IIf(Weekday(dtTemp) > 5, 9 - Weekday(dtTemp), 1)
End Function
 
Code:
Sub hsv()
Dim datum As Date
 datum = InputBox("Datum van de levering", "Info voor certificaat")
 MsgBox Format(Application.WorkDay(datum, 1), "dd-mm-yyyy")
End Sub

Of:
Code:
Sub hsv()
MsgBox Format(Application.WorkDay(Application.InputBox("Datum van de levering", "Info voor certificaat", , , , , , 1), 1), "dd-mm-yyyy")
End Sub
 
Laatst bewerkt:
Ik bedoel eerder als argument bij het ingeven, niet er na, zie code hieronder:

Code:
    While Not CorrectDate
        datum = InputBox("Datum van de levering", "Info voor certificaat", [COLOR="#FF0000"]Application.WorkDay(datum, 1), "dd-mm-yyyy")[/COLOR]
        If datum = "" Then Exit Sub
        If Not IsDate(datum) Then
            MsgBox "Datum is niet correct, geef in als 15/01/2017 !", vbCritical, "Fout!"
        Else
            CorrectDate = True
        End If
    Wend

De voorgestelde datum komt in de messagebox, waarna die eventueel kan overschreven worden.
 
Laatst bewerkt:
En wat is de vraag nu; of is het zo opgelost?
 
Oeps, vergeet ik er weer de foutmelding bij te zetten.

Fout 13, typen komen niet met elkaar overeen

Code:
       Dim Datum as Date
       Dim CorrectDate as Boolean
       Datum = InputBox("Datum van de levering", "Info voor certificaat", Application.WorkDay(datum, 1), "dd-mm-yyyy")
 
Code:
Dim Datum As String
Dim CorrectDate As Boolean
While Not CorrectDate
    Datum = InputBox("Datum van de levering", "Info voor certificaat", Format(Application.WorkDay(Date, 1), "dd\/mm\/yyyy"))
        If Datum = "" Then Exit Sub
        If Not IsDate(Datum) Then
            MsgBox "Datum is niet correct, geef in als 15/01/2017 !", vbCritical, "Fout!"
        Else
            CorrectDate = True
        End If
    Wend
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan