Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Empêcher la saisie de WE dans un textbox

6 réponses
Avatar
Michel
Bonjour
Je souhaite faire fonctionner cette procédure
j'ai un textbox sur un userform
cela ne fonctionne pas
Merci


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub

6 réponses

Avatar
Philippe.R
Bonjour Michel,
Essaie :

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If application.WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
application.WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox application.WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox application.WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

--
Amicales Salutations
XL 97 / 2000 / 2002
Préférez suivre facilement sur le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Michel" a écrit dans le message de news:

Bonjour
Je souhaite faire fonctionner cette procédure
j'ai un textbox sur un userform
cela ne fonctionne pas
Merci


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub




Avatar
anonymousA
bonjour,

QU'est ce qui ne marche pas , car cette proc t'a été communiquée il y a
maintenant quelques mois et ne semble pas t'avoir posé souci depuis lors.

A+

Bonjour
Je souhaite faire fonctionner cette procédure
j'ai un textbox sur un userform
cela ne fonctionne pas
Merci


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub




Avatar
Michel
Bonjour Philippe et merci pour ton aide
En fait je souhaite que si l'utilisateur saisit une date de WE
un msgbox apparaît et efface le textbox
je n'arrive pas à le faire fonctionner
les 2 msgbox apparaissent l'un après l'autre ??
Michel


"Philippe.R" a écrit dans le message de news:
OM$
Bonjour Michel,
Essaie :

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If application.WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
application.WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox application.WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox application.WorksheetFunction.Weekday(TextBox1.Value, 2) & "non
We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

--
Amicales Salutations
XL 97 / 2000 / 2002
Préférez suivre facilement sur le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Michel" a écrit dans le message de news:

Bonjour
Je souhaite faire fonctionner cette procédure
j'ai un textbox sur un userform
cela ne fonctionne pas
Merci


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub







Avatar
Michel
Bonjour,
j'ai transmis cette proc et cela fonctionne chez lui apparemment, car je
n'ai pas eu de retour.
je ne comprends pas le "WE" et le "numéro avec non we"
ce que je souhaiterai dans la mesure du possible, c'est que si une date et
saisie le WE, cela lance un msgbox afin de prévenir l'utilisateur, et efface
le textbox
dans ce cas, si je saisis 08/05/05 cela lance le msgbox nonwe si je saisie
09/05/05 cela lance également nonwe ???
Je n'y comprends pas grand-chose
Michel

"anonymousA" a écrit dans le message de news:
427b5a29$0$11698$
bonjour,

QU'est ce qui ne marche pas , car cette proc t'a été communiquée il y a
maintenant quelques mois et ne semble pas t'avoir posé souci depuis lors.

A+

Bonjour
Je souhaite faire fonctionner cette procédure
j'ai un textbox sur un userform
cela ne fonctionne pas
Merci


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub





Avatar
anonymousA
re,

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error GoTo errhandler

tampon = CDbl(CDate(TextBox1.Value))

If Application.WorksheetFunction.Weekday(tampon, 2) = 6 Or _
Application.WorksheetFunction.Weekday(tampon, 2) = 7 Then

MsgBox Application.WorksheetFunction.Weekday(tampon, 2) & "WE"
TextBox1.Value = ""
Cancel = True

End If

Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub

A+


Bonjour,
j'ai transmis cette proc et cela fonctionne chez lui apparemment, car je
n'ai pas eu de retour.
je ne comprends pas le "WE" et le "numéro avec non we"
ce que je souhaiterai dans la mesure du possible, c'est que si une date et
saisie le WE, cela lance un msgbox afin de prévenir l'utilisateur, et efface
le textbox
dans ce cas, si je saisis 08/05/05 cela lance le msgbox nonwe si je saisie
09/05/05 cela lance également nonwe ???
Je n'y comprends pas grand-chose
Michel

"anonymousA" a écrit dans le message de news:
427b5a29$0$11698$
bonjour,

QU'est ce qui ne marche pas , car cette proc t'a été communiquée il y a
maintenant quelques mois et ne semble pas t'avoir posé souci depuis lors.

A+

Bonjour
Je souhaite faire fonctionner cette procédure
j'ai un textbox sur un userform
cela ne fonctionne pas
Merci


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub









Avatar
Michel
Merci beaucoup anonymousA
c'est exactement cela
Bonne journée
Michel

"anonymousA" a écrit dans le message
de news:
re,

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error GoTo errhandler

tampon = CDbl(CDate(TextBox1.Value))

If Application.WorksheetFunction.Weekday(tampon, 2) = 6 Or _
Application.WorksheetFunction.Weekday(tampon, 2) = 7 Then

MsgBox Application.WorksheetFunction.Weekday(tampon, 2) & "WE"
TextBox1.Value = ""
Cancel = True

End If

Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub

A+


Bonjour,
j'ai transmis cette proc et cela fonctionne chez lui apparemment, car je
n'ai pas eu de retour.
je ne comprends pas le "WE" et le "numéro avec non we"
ce que je souhaiterai dans la mesure du possible, c'est que si une date
et
saisie le WE, cela lance un msgbox afin de prévenir l'utilisateur, et
efface
le textbox
dans ce cas, si je saisis 08/05/05 cela lance le msgbox nonwe si je
saisie
09/05/05 cela lance également nonwe ???
Je n'y comprends pas grand-chose
Michel

"anonymousA" a écrit dans le message de news:
427b5a29$0$11698$
bonjour,

QU'est ce qui ne marche pas , car cette proc t'a été communiquée il y a
maintenant quelques mois et ne semble pas t'avoir posé souci depuis
lors.

A+

Bonjour
Je souhaite faire fonctionner cette procédure
j'ai un textbox sur un userform
cela ne fonctionne pas
Merci


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

On Error GoTo errhandler

TextBox1.Value = CDate(TextBox1.Value)

If WorksheetFunction.Weekday(TextBox1.Value, 2) = 6 Or _
WorksheetFunction.Weekday(TextBox1.Value, 2) = 7 Then

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "WE"
Cancel = True
Else

MsgBox WorksheetFunction.Weekday(TextBox1.Value, 2) & "non We"

End If
Exit Sub

errhandler:
MsgBox "saissez une date au format XX/XX/XX"

End Sub