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

Stopper une macro

3 réponses
Avatar
NATOU
Bonjour,
sur clic d'un bouton je lance un =E9x=E9cutable, mais je=20
d=E9sire mettre une condition, les op=E9ratrices sont dans un=20
formulaires et j'ai une zone qui doit =EAtre inform=E9e=20
qu'elles oublient r=E9guli=E8rement de remplire, je souhaite=20
lorsqu'elles cliquent dans le bouton de lancement que la=20
macro ne s'=E9x=E9cute pas si la zone n'est pas remplie=20
comment stopper l'=E9x=E9cution de la macro une fois que j'ai=20
remplie ma condition "if" avec messg d'erreur et=20
l'activation du champs =E0 remplir ?
Merci=20
natou

3 réponses

Avatar
Bonjour,

Deux possibilités:
soit vous apellez du code à la place de la macro
Par exemple

Public Sub MonBouton_OnCLick()
if me.LeChampAVerifier = ??? then
docmd.runmacro "LaMacroALAncer"
else
msgbox "Ce champ est obligatoire"
end if
End Sub

Soit vous utilisez le nom du champ dans la colonne
condition de votre macro en indiquant par exemple le
texte :
vraifaux( screen.activeform.MonChamp=???;Vrai;Faux)

Personellement je prefere le code, c'est d'ailleurs
conseillé par microsoft sous Access XP.

Bon courage

EVA
-----Message d'origine-----
Bonjour,
sur clic d'un bouton je lance un éxécutable, mais je
désire mettre une condition, les opératrices sont dans
un

formulaires et j'ai une zone qui doit être informée
qu'elles oublient régulièrement de remplire, je souhaite
lorsqu'elles cliquent dans le bouton de lancement que la
macro ne s'éxécute pas si la zone n'est pas remplie
comment stopper l'éxécution de la macro une fois que
j'ai

remplie ma condition "if" avec messg d'erreur et
l'activation du champs à remplir ?
Merci
natou
.



Avatar
Patrick
Bonjour,

Le truc, en fait, n'est pas interrompre la macro mais plutôt de lui faire
faire des choses différentes.

En clair, dans la macro liée au bouton, il faut commencer par faire un
contrôle des données saisies... Si la zone de saisie obligatoire n'est pas
renseignée, tu affiches un message et tu arrêtes la procédure avec "Exit
Sub". Si la zone est bien renseignée, tu exécutes le traitement normal. Un
peu comme cela :

Private Sub cmdOK_Click()
If txtNom.Text = "" Then
MsgBox "La zone 'Nom' doit être impérativement renseignée."
Exit Sub
Else
...
End If
End Sub

Si je n'ai pas été clair, hésite pas à revenir vers moi.

--
Patrick

"NATOU" wrote in message
news:c84c01c438e6$e4891880$
Bonjour,
sur clic d'un bouton je lance un éxécutable, mais je
désire mettre une condition, les opératrices sont dans un
formulaires et j'ai une zone qui doit être informée
qu'elles oublient régulièrement de remplire, je souhaite
lorsqu'elles cliquent dans le bouton de lancement que la
macro ne s'éxécute pas si la zone n'est pas remplie
comment stopper l'éxécution de la macro une fois que j'ai
remplie ma condition "if" avec messg d'erreur et
l'activation du champs à remplir ?
Merci
natou
Avatar
NATOU
C'est tout bon MERCI
natou
-----Message d'origine-----
Bonjour,

Le truc, en fait, n'est pas interrompre la macro mais
plutôt de lui faire

faire des choses différentes.

En clair, dans la macro liée au bouton, il faut commencer
par faire un

contrôle des données saisies... Si la zone de saisie
obligatoire n'est pas

renseignée, tu affiches un message et tu arrêtes la
procédure avec "Exit

Sub". Si la zone est bien renseignée, tu exécutes le
traitement normal. Un

peu comme cela :

Private Sub cmdOK_Click()
If txtNom.Text = "" Then
MsgBox "La zone 'Nom' doit être impérativement
renseignée."

Exit Sub
Else
...
End If
End Sub

Si je n'ai pas été clair, hésite pas à revenir vers moi.

--
Patrick

"NATOU" wrote in
message

news:c84c01c438e6$e4891880$
Bonjour,
sur clic d'un bouton je lance un éxécutable, mais je
désire mettre une condition, les opératrices sont dans un
formulaires et j'ai une zone qui doit être informée
qu'elles oublient régulièrement de remplire, je souhaite
lorsqu'elles cliquent dans le bouton de lancement que la
macro ne s'éxécute pas si la zone n'est pas remplie
comment stopper l'éxécution de la macro une fois que j'ai
remplie ma condition "if" avec messg d'erreur et
l'activation du champs à remplir ?
Merci
natou


.