Salut,
"yves"
| Je souhaite dans un formulaire obligé de saisir une case à cocher parmi 4
| possibilités avant de passer à l'enregistrement suivant
Si tes cases à cocher se nomme C1, C2, C3 et C4
tu peux mettre dans l'avant mise à jour du formulaire :
if (c1 + c2 + c3 + c4) = 0 then
msgbox "faites votre choix..."
cancel = true
end if
PS:
on profite ici du fait qu'une case non cochée vaut zéro !
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Salut,
"yves"
| Je souhaite dans un formulaire obligé de saisir une case à cocher parmi 4
| possibilités avant de passer à l'enregistrement suivant
Si tes cases à cocher se nomme C1, C2, C3 et C4
tu peux mettre dans l'avant mise à jour du formulaire :
if (c1 + c2 + c3 + c4) = 0 then
msgbox "faites votre choix..."
cancel = true
end if
PS:
on profite ici du fait qu'une case non cochée vaut zéro !
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Salut,
"yves"
| Je souhaite dans un formulaire obligé de saisir une case à cocher parmi 4
| possibilités avant de passer à l'enregistrement suivant
Si tes cases à cocher se nomme C1, C2, C3 et C4
tu peux mettre dans l'avant mise à jour du formulaire :
if (c1 + c2 + c3 + c4) = 0 then
msgbox "faites votre choix..."
cancel = true
end if
PS:
on profite ici du fait qu'une case non cochée vaut zéro !
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Salut,
"yves"
| mais comme je lance un autre
| formulaire à la fermeture de mon formulaire ou les cases à cocher sont
| présentent je ne reste pas bloque sur mon formulaire et l'enregistrement est
| perdue.
Tu peux me la refaire celle là ? ;-))
Si ce que je devine est correct... tu dois avoir mal placé le code !
| > Si tes cases à cocher se nomme C1, C2, C3 et C4
| > tu peux mettre dans l'avant mise à jour du formulaire :
car j'avais dit : dans *l'avant mise à jour* du formulaire
et ne pas oublier le => Cancel = True
| > if (c1 + c2 + c3 + c4) = 0 then
| > msgbox "faites votre choix..."
| > cancel = true
| > end if
Avec ca, tu reste dans le formulaire, c'est prévu pour :o)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Salut,
"yves"
| mais comme je lance un autre
| formulaire à la fermeture de mon formulaire ou les cases à cocher sont
| présentent je ne reste pas bloque sur mon formulaire et l'enregistrement est
| perdue.
Tu peux me la refaire celle là ? ;-))
Si ce que je devine est correct... tu dois avoir mal placé le code !
| > Si tes cases à cocher se nomme C1, C2, C3 et C4
| > tu peux mettre dans l'avant mise à jour du formulaire :
car j'avais dit : dans *l'avant mise à jour* du formulaire
et ne pas oublier le => Cancel = True
| > if (c1 + c2 + c3 + c4) = 0 then
| > msgbox "faites votre choix..."
| > cancel = true
| > end if
Avec ca, tu reste dans le formulaire, c'est prévu pour :o)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Salut,
"yves"
| mais comme je lance un autre
| formulaire à la fermeture de mon formulaire ou les cases à cocher sont
| présentent je ne reste pas bloque sur mon formulaire et l'enregistrement est
| perdue.
Tu peux me la refaire celle là ? ;-))
Si ce que je devine est correct... tu dois avoir mal placé le code !
| > Si tes cases à cocher se nomme C1, C2, C3 et C4
| > tu peux mettre dans l'avant mise à jour du formulaire :
car j'avais dit : dans *l'avant mise à jour* du formulaire
et ne pas oublier le => Cancel = True
| > if (c1 + c2 + c3 + c4) = 0 then
| > msgbox "faites votre choix..."
| > cancel = true
| > end if
Avec ca, tu reste dans le formulaire, c'est prévu pour :o)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
| particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Merci
re,
"yves"
| J'ai bien pracé le code avec une [Procédure événementielle]sur la propriété
| avant mise à jour
| Private Sub Form_BeforeUpdate(Cancel As Integer)
| If (TYPE_COLLECTIVITE + TYPE_ASSOCIATION + TYPE_PARTICULIER + TYPE_SOCIETE)
| = 0 Then
| MsgBox "faites votre choix...cocher collectivite ou association ou
| particulier ou societe"
| Cancel = True
| End If
|
| End Sub
| Je ne vois pas où est l'erreur
Et donc cela fonctionne, non ?
Quelle est l'erreur dont tu parles ? (je n'ai pas compris l'histoire de l'autre formulaire...)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
| particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Merci
re,
"yves"
| J'ai bien pracé le code avec une [Procédure événementielle]sur la propriété
| avant mise à jour
| Private Sub Form_BeforeUpdate(Cancel As Integer)
| If (TYPE_COLLECTIVITE + TYPE_ASSOCIATION + TYPE_PARTICULIER + TYPE_SOCIETE)
| = 0 Then
| MsgBox "faites votre choix...cocher collectivite ou association ou
| particulier ou societe"
| Cancel = True
| End If
|
| End Sub
| Je ne vois pas où est l'erreur
Et donc cela fonctionne, non ?
Quelle est l'erreur dont tu parles ? (je n'ai pas compris l'histoire de l'autre formulaire...)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
| particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Merci
re,
"yves"
| J'ai bien pracé le code avec une [Procédure événementielle]sur la propriété
| avant mise à jour
| Private Sub Form_BeforeUpdate(Cancel As Integer)
| If (TYPE_COLLECTIVITE + TYPE_ASSOCIATION + TYPE_PARTICULIER + TYPE_SOCIETE)
| = 0 Then
| MsgBox "faites votre choix...cocher collectivite ou association ou
| particulier ou societe"
| Cancel = True
| End If
|
| End Sub
| Je ne vois pas où est l'erreur
Et donc cela fonctionne, non ?
Quelle est l'erreur dont tu parles ? (je n'ai pas compris l'histoire de l'autre formulaire...)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
re,
"yves"
| La procédure fonctionne bien mais en faite j'ai deux formulaires un
| formulaire CLIENT et un formulaire SAV pour naviguer de l'un à l'autre je
| lance une macro dans chaque formulaire.
| Dans le formulaire client 4 cases à cocher me permettent donc de
| sélectionner le type de client si j'oublie de cocher le type de client je
| lance la procedure que tu m'as donné. En saisissant mon client si je n'ai pas
| coché la case et que je lance la macro pour ouvrir le formulaire SAV j'ouvre
| bien mon formulaire et l'erreur de la boite de dialogue : "faites votre
| choix...cocher collectivite ou association ou
| > | particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma
macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Tu utilise des "macros" dans l'onglet "Macros" ?
Si oui, il n'est pas heureux de mélanger les macros et les modules de code VBA
Les macros étant ingérables, surtout au niveau de la gestion d'erreur.
Tu devrais essayer de modifier ta façon de faire...
Bon...
Ton bouton qui ouvre l'autre formulaire doit tenir compte de ce qui se passe
dans ton formulaire...
Crée le bouton avec l'assistant et modifie le code pour obtenir ceci:
Dim stDocName As String
Dim stLinkCriteria As String
If (c1 + c2 + c3 + c4) = 0 Then
MsgBox "pas coché..."
Exit Sub
Else
stDocName = "Nom du formulaire"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Il y a plus élégant... mais cela bon ;-)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
re,
"yves"
| La procédure fonctionne bien mais en faite j'ai deux formulaires un
| formulaire CLIENT et un formulaire SAV pour naviguer de l'un à l'autre je
| lance une macro dans chaque formulaire.
| Dans le formulaire client 4 cases à cocher me permettent donc de
| sélectionner le type de client si j'oublie de cocher le type de client je
| lance la procedure que tu m'as donné. En saisissant mon client si je n'ai pas
| coché la case et que je lance la macro pour ouvrir le formulaire SAV j'ouvre
| bien mon formulaire et l'erreur de la boite de dialogue : "faites votre
| choix...cocher collectivite ou association ou
| > | particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma
macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Tu utilise des "macros" dans l'onglet "Macros" ?
Si oui, il n'est pas heureux de mélanger les macros et les modules de code VBA
Les macros étant ingérables, surtout au niveau de la gestion d'erreur.
Tu devrais essayer de modifier ta façon de faire...
Bon...
Ton bouton qui ouvre l'autre formulaire doit tenir compte de ce qui se passe
dans ton formulaire...
Crée le bouton avec l'assistant et modifie le code pour obtenir ceci:
Dim stDocName As String
Dim stLinkCriteria As String
If (c1 + c2 + c3 + c4) = 0 Then
MsgBox "pas coché..."
Exit Sub
Else
stDocName = "Nom du formulaire"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Il y a plus élégant... mais cela bon ;-)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
re,
"yves"
| La procédure fonctionne bien mais en faite j'ai deux formulaires un
| formulaire CLIENT et un formulaire SAV pour naviguer de l'un à l'autre je
| lance une macro dans chaque formulaire.
| Dans le formulaire client 4 cases à cocher me permettent donc de
| sélectionner le type de client si j'oublie de cocher le type de client je
| lance la procedure que tu m'as donné. En saisissant mon client si je n'ai pas
| coché la case et que je lance la macro pour ouvrir le formulaire SAV j'ouvre
| bien mon formulaire et l'erreur de la boite de dialogue : "faites votre
| choix...cocher collectivite ou association ou
| > | particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma
macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Tu utilise des "macros" dans l'onglet "Macros" ?
Si oui, il n'est pas heureux de mélanger les macros et les modules de code VBA
Les macros étant ingérables, surtout au niveau de la gestion d'erreur.
Tu devrais essayer de modifier ta façon de faire...
Bon...
Ton bouton qui ouvre l'autre formulaire doit tenir compte de ce qui se passe
dans ton formulaire...
Crée le bouton avec l'assistant et modifie le code pour obtenir ceci:
Dim stDocName As String
Dim stLinkCriteria As String
If (c1 + c2 + c3 + c4) = 0 Then
MsgBox "pas coché..."
Exit Sub
Else
stDocName = "Nom du formulaire"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Il y a plus élégant... mais cela bon ;-)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
re,
"yves"
| La procédure fonctionne bien mais en faite j'ai deux formulaires un
| formulaire CLIENT et un formulaire SAV pour naviguer de l'un à l'autre je
| lance une macro dans chaque formulaire.
| Dans le formulaire client 4 cases à cocher me permettent donc de
| sélectionner le type de client si j'oublie de cocher le type de client je
| lance la procedure que tu m'as donné. En saisissant mon client si je n'ai pas
| coché la case et que je lance la macro pour ouvrir le formulaire SAV j'ouvre
| bien mon formulaire et l'erreur de la boite de dialogue : "faites votre
| choix...cocher collectivite ou association ou
| > | particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma
macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Tu utilise des "macros" dans l'onglet "Macros" ?
Si oui, il n'est pas heureux de mélanger les macros et les modules de code VBA
Les macros étant ingérables, surtout au niveau de la gestion d'erreur.
Tu devrais essayer de modifier ta façon de faire...
Bon...
Ton bouton qui ouvre l'autre formulaire doit tenir compte de ce qui se passe
dans ton formulaire...
Crée le bouton avec l'assistant et modifie le code pour obtenir ceci:
Dim stDocName As String
Dim stLinkCriteria As String
If (c1 + c2 + c3 + c4) = 0 Then
MsgBox "pas coché..."
Exit Sub
Else
stDocName = "Nom du formulaire"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Il y a plus élégant... mais cela bon ;-)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
re,
"yves"
| La procédure fonctionne bien mais en faite j'ai deux formulaires un
| formulaire CLIENT et un formulaire SAV pour naviguer de l'un à l'autre je
| lance une macro dans chaque formulaire.
| Dans le formulaire client 4 cases à cocher me permettent donc de
| sélectionner le type de client si j'oublie de cocher le type de client je
| lance la procedure que tu m'as donné. En saisissant mon client si je n'ai pas
| coché la case et que je lance la macro pour ouvrir le formulaire SAV j'ouvre
| bien mon formulaire et l'erreur de la boite de dialogue : "faites votre
| choix...cocher collectivite ou association ou
| > | particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma
macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Tu utilise des "macros" dans l'onglet "Macros" ?
Si oui, il n'est pas heureux de mélanger les macros et les modules de code VBA
Les macros étant ingérables, surtout au niveau de la gestion d'erreur.
Tu devrais essayer de modifier ta façon de faire...
Bon...
Ton bouton qui ouvre l'autre formulaire doit tenir compte de ce qui se passe
dans ton formulaire...
Crée le bouton avec l'assistant et modifie le code pour obtenir ceci:
Dim stDocName As String
Dim stLinkCriteria As String
If (c1 + c2 + c3 + c4) = 0 Then
MsgBox "pas coché..."
Exit Sub
Else
stDocName = "Nom du formulaire"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Il y a plus élégant... mais cela bon ;-)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
re,
"yves"
| La procédure fonctionne bien mais en faite j'ai deux formulaires un
| formulaire CLIENT et un formulaire SAV pour naviguer de l'un à l'autre je
| lance une macro dans chaque formulaire.
| Dans le formulaire client 4 cases à cocher me permettent donc de
| sélectionner le type de client si j'oublie de cocher le type de client je
| lance la procedure que tu m'as donné. En saisissant mon client si je n'ai pas
| coché la case et que je lance la macro pour ouvrir le formulaire SAV j'ouvre
| bien mon formulaire et l'erreur de la boite de dialogue : "faites votre
| choix...cocher collectivite ou association ou
| > | particulier ou societe" s'affiche en meme temps que l'ouverture du formulaire SAV et comme ma
macro ferme le formulaire CLIENT, j'ai perdu mon client et un numéro auto .
Tu utilise des "macros" dans l'onglet "Macros" ?
Si oui, il n'est pas heureux de mélanger les macros et les modules de code VBA
Les macros étant ingérables, surtout au niveau de la gestion d'erreur.
Tu devrais essayer de modifier ta façon de faire...
Bon...
Ton bouton qui ouvre l'autre formulaire doit tenir compte de ce qui se passe
dans ton formulaire...
Crée le bouton avec l'assistant et modifie le code pour obtenir ceci:
Dim stDocName As String
Dim stLinkCriteria As String
If (c1 + c2 + c3 + c4) = 0 Then
MsgBox "pas coché..."
Exit Sub
Else
stDocName = "Nom du formulaire"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Il y a plus élégant... mais cela bon ;-)
--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/