Oppure

Loading
15/03/10 17:20
gabryk
Ciao a tutti avrei bisogno di un piccolo aiuto:

ho un form con 2 controlli datepick da cui si può scegliere giorno mese e anno e insieme creano un intervallo DA - A. Avrei bisogno che una volta impostata la data sul datepick DA e premuto un pulsante la data A venisse impostata automaticamente al venerdì successivo. Inoltre mi servirebbe che anche la data DA fosse spostata indietro al primo lunedì disponibile se non è già un lunedì.

Esempio: l'utente sceglie Martedì 1 dicembre 2009 e giovedì 31 dicembre 2009. Alla pressione del tasto vorrei che la prima data fosse portata al 30 novembre 2009 (lunedì;) e la seconda al 4 dicembre 2009 (venerdì;).

Ad ogni successiva pressione del tasto il programma dovrebbe avanzare di una settimana. Quindi nell'esempio dovrebbe mostrare dal 7 all'11 poi dal 14 al 18, dal 21 al 25 e infine dal 28 all'1 gennaio 2010.

Come si può fare? Spero di essermi spiegato, grazie
aaa
15/03/10 20:43
Alfonso
If n = 0 Then
    'i indica di quanti giorni la prima data dista dal lunedì
    i = Weekday(Text1.Text, vbMonday) - 1
    Text1.Text = DateAdd("d", CDate(Text1.Text), -i)
    n = 1
Else
    ' incrementa di una settimana
    Text1.Text = DateAdd("d", CDate(Text1.Text), 7)
End If
' calcola la data del venerdì successivo
Text2.Text = DateAdd("d", CDate(Text1.Text), 4)

n conta se è il primo click del tasto o un successivo
text1=dataDa
text2=dataA

Ciao
aaa
18/03/10 7:44
gabryk
Grande funziona benissimo! Grazie :k:
aaa