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

Modifier la propriété DefaultValue d'une case à cocher indépendante

19 réponses
Avatar
Jacques
Bonsoir,

Sur mon formulaire J'ai une case =E0 cocher ind=E9pendante et je voudrais
conserver sa valeur =E0
la fermeture du formulaire, mais mon code ne marche pas.

Private Sub Cocher79_AfterUpdate()

If Cocher79.Value =3D -1 Or Cocher79.Value =3D 0 Then

reponse =3D MessageBox(Me.hwnd, "Attention vous allez modifier la
valeur " _
& vbCrLf & vbCrLf & "Voulez vous continuer ?", _
"Demande de confirmation", (mb_yesno +
MB_ICONQUESTION))

If reponse =3D vbYes Then
Forms![frm Mise =E0 jour]![sfm Mise =E0 jour a].Form!
Cocher79.DefaultValue =3D 0
Else
Forms![frm Mise =E0 jour]![sfm Mise =E0 jour a].Form!
Cocher79.DefaultValue =3D 1
End If
End If

End Sub

Merci pour voutre aide.

Salutations

9 réponses

1 2
Avatar
jacques
On 19 mar, 14:56, "Michel__D"
wrote:
Re,

"jacques" a écrit dans le message de news: dd810bae-ef82
On 19 mar, 12:42, "Michel__D"
wrote:





> "jacques" a écrit dans le message de news: 38d62a71-58
> On 18 mar, 20:25, Michel__D
> wrote:

> > jacques a écrit :

> > > On 18 mar, 14:37, Michel__D
> > > wrote:
> > >> Bonjour,

> > >> jacques a écrit :

> > >>> On 12 mar, 17:57, jacques wrote:
> > >>>> On 1 mar, 22:14, "3stone" wrote:
> > >>>>> Salut,
> > >>>>> Une valeur par défaut pour une CàC indépendante ?
> > >>>>> Je ne vois pas bien à quoi cela peu servir...
> > >>>>> Une valeur par défaut sert à présenter cette valeur lors de la création
> > >>>>> d'un nouvel enregistrement... mais comme ici elle est indépen dante....
> > >>>>> --
> > >>>>> A+
> > >>>>> Pierre (3stone) Access MVP
> > >>>>> Perso:http://www.3stone.be/
> > >>>>> MPFA:http://www.mpfa.info/(infosgénérales)
> > >>>>> Jacques wrote:
> > >>>>>> Bonsoir,
> > >>>>>> Sur mon formulaire J'ai une case à cocher indépendante et je voudrais
> > >>>>>> conserver sa valeur à
> > >>>>>> la fermeture du formulaire, mais mon code ne marche pas.
> > >>>>>> Private Sub Cocher79_AfterUpdate()
> > >>>>>> If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
> > >>>>>> reponse = MessageBox(Me.hwnd, "Attention vous allez modifier la
> > >>>>>> valeur " _
> > >>>>>> & vbCrLf & vbCrLf & "Voulez vous continuer ?", _
> > >>>>>> "Demande de confirmation", (mb_yesno +
> > >>>>>> MB_ICONQUESTION))
> > >>>>>> If reponse = vbYes Then
> > >>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
> > >>>>>> Cocher79.DefaultValue = 0
> > >>>>>> Else
> > >>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
> > >>>>>> Cocher79.DefaultValue = 1
> > >>>>>> End If
> > >>>>>> End If
> > >>>>>> End Sub
> > >>>>>> Merci pour voutre aide.
> > >>>>>> Salutations- Masquer le texte des messages précédents -
> > >>>>> - Afficher le texte des messages précédents -
> > >>>> Bonjour 3stone,
> > >>>> Je reprends mon post Modifier la propriété DefaultValue, et j'explique
> > >>>> mon problème à résoudre.
> > >>>> Dans ma table j'ai un Champs Statut qui en cours de saison se re mplie
> > >>>> de valeur 1 puis 2 , et 3
> > >>>> Adhérent Statut
> > >>>> A 1
> > >>>> B 1
> > >>>> C 1
> > >>>> D 2
> > >>>> E 2
> > >>>> F 2
> > >>>> G 3
> > >>>> H 3
> > >>>> Je voudrais lorsque j'arrive à la période statut 2 empéche r la saisie
> > >>>> de 1, puis de 2
> > >>>> lorque je commence la période 3.
> > >>>> Comme je ne voulais pas avoir 3 champ supplémentaires j'ai pen sé a
> > >>>> faire une condition
> > >>>> sur trois case à cocher indépendante avec le maintien de la valeur à
> > >>>> la fermeture du formulaire
> > >>>> Salutations- Masquer le texte des messages précédents -
> > >>>> - Afficher le texte des messages précédents -
> > >>> Bonjour,
> > >>> Personne pour m'aider ?
> > >>> Salutaions.
> > >> Et pourquoi tu n'effectue pas un contrôle avant modification du champ
> > >> statut et si la valeur est inférieure tu annule la modification. - Masquer le texte des messages précédents -

> > >> - Afficher le texte des messages précédents -

> > > Bonsoir Michel,

> > > Merci pour ta réponse, peut-tu me donner un bout de code pour voi r le
> > > principe ?

> > > Salutations

> > Avec ce genre de code par exemple :

> > Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
> > If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
> > Me.ChampStatut.Undo
> > Cancel = True
> > End If
> > End Sub- Masquer le texte des messages précédents -

> > - Afficher le texte des messages précédents -

> Bonjour Michel,

> C'est pas mal ça me convient.

> Le champ statut détermine les enregistrements à envoyer, comment pe ut-
> on faire pour empêcher lorsque je décide d'envoyer les
> enregistrements avec statut = 1 de saisir par erreur statut = 1 alo rs
> que je dois saisir statut = 2.

> Salutations

> ==>Réponse :
> Petite amélioration pour le code pour éviter de supprimer la valeur :
> (hypothèse ou tu ne saisis que des valeurs positives)

> Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
> Me.ChampStatut.Undo
> Cancel = True
> End If
> End Sub

> Par contre je ne comprends pas ta nouvelle demande !- Masquer le texte des messages précédents -

> - Afficher le texte des messages précédents -

Re bonjour mICHEL,

Actuellement avec ton code tant que je ne saisie pas un numéro
supérieur  à
ceux existant dans le champ statut, la dernière valeur saisie apparaî t
sur le contrôle
grâce à un Dmax sur le champ statut.

Je voudrais au moment où je le décide  (j’avais pensé à 3 cas es à
cocher indépendantes
car ça m’embête de rajouté 3 champs dans la tbl) interdire la sai sie
du dernier numéro
saisie.

Salutations

==> Réponse
Mon code interdit de saisir dans le champ une valeur inférieure à sa
 valeur antérieure et pas besoin du Dmax c'est le Undo qui redonne
 l'ancienne valeur au champ.

Maintenant si j'ai bien compris, lorsque tu désire envoyer des
 enregistrements à une certainne valeur de status (pour mieux compren dre
 il faudrait dire à quoi correspondent ces valeurs du statut) tu souh aite
 interdire la saisie de cette valeur de status.

Si c'est bien cela, tu pourrais mettre dans une table la valeur du status
 utilisé pour sélectionner tes enregistrements à envoyer et tu ra joute
 une condition (avec DLookup) pour éviter d'utiliser cette valeur.

If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me.ChampS tatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le texte d es messages précédents -

- Afficher le texte des messages précédents -



Re Michel,

Le plus simple est de joindre un fichier, des que possible je le
ferais.

Merci pour ton aide , et ta patience.

Salutations
Avatar
jacques
On 19 mar, 16:01, jacques wrote:
On 19 mar, 14:56, "Michel__D"
wrote:





> Re,

> "jacques" a écrit dans le message de news: dd810bae-ef
> On 19 mar, 12:42, "Michel__D"
> wrote:

> > "jacques" a écrit dans le message de news: 38d62a71-
> > On 18 mar, 20:25, Michel__D
> > wrote:

> > > jacques a écrit :

> > > > On 18 mar, 14:37, Michel__D
> > > > wrote:
> > > >> Bonjour,

> > > >> jacques a écrit :

> > > >>> On 12 mar, 17:57, jacques wrote:
> > > >>>> On 1 mar, 22:14, "3stone" wrote:
> > > >>>>> Salut,
> > > >>>>> Une valeur par défaut pour une CàC indépendante ?
> > > >>>>> Je ne vois pas bien à quoi cela peu servir...
> > > >>>>> Une valeur par défaut sert à présenter cette valeur lor s de la création
> > > >>>>> d'un nouvel enregistrement... mais comme ici elle est indép endante....
> > > >>>>> --
> > > >>>>> A+
> > > >>>>> Pierre (3stone) Access MVP
> > > >>>>> Perso:http://www.3stone.be/
> > > >>>>> MPFA:http://www.mpfa.info/(infosgénérales)
> > > >>>>> Jacques wrote:
> > > >>>>>> Bonsoir,
> > > >>>>>> Sur mon formulaire J'ai une case à cocher indépendante e t je voudrais
> > > >>>>>> conserver sa valeur à
> > > >>>>>> la fermeture du formulaire, mais mon code ne marche pas.
> > > >>>>>> Private Sub Cocher79_AfterUpdate()
> > > >>>>>> If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
> > > >>>>>> reponse = MessageBox(Me.hwnd, "Attention vous allez modifi er la
> > > >>>>>> valeur " _
> > > >>>>>> & vbCrLf & vbCrLf & "Voulez vous continuer ?", _
> > > >>>>>> "Demande de confirmation", (mb_yesno +
> > > >>>>>> MB_ICONQUESTION))
> > > >>>>>> If reponse = vbYes Then
> > > >>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
> > > >>>>>> Cocher79.DefaultValue = 0
> > > >>>>>> Else
> > > >>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
> > > >>>>>> Cocher79.DefaultValue = 1
> > > >>>>>> End If
> > > >>>>>> End If
> > > >>>>>> End Sub
> > > >>>>>> Merci pour voutre aide.
> > > >>>>>> Salutations- Masquer le texte des messages précédents -
> > > >>>>> - Afficher le texte des messages précédents -
> > > >>>> Bonjour 3stone,
> > > >>>> Je reprends mon post Modifier la propriété DefaultValue, e t j'explique
> > > >>>> mon problème à résoudre.
> > > >>>> Dans ma table j'ai un Champs Statut qui en cours de saison se remplie
> > > >>>> de valeur 1 puis 2 , et 3
> > > >>>> Adhérent Statut
> > > >>>> A 1
> > > >>>> B 1
> > > >>>> C 1
> > > >>>> D 2
> > > >>>> E 2
> > > >>>> F 2
> > > >>>> G 3
> > > >>>> H 3
> > > >>>> Je voudrais lorsque j'arrive à la période statut 2 empéc her la saisie
> > > >>>> de 1, puis de 2
> > > >>>> lorque je commence la période 3.
> > > >>>> Comme je ne voulais pas avoir 3 champ supplémentaires j'ai p ensé a
> > > >>>> faire une condition
> > > >>>> sur trois case à cocher indépendante avec le maintien de l a valeur à
> > > >>>> la fermeture du formulaire
> > > >>>> Salutations- Masquer le texte des messages précédents -
> > > >>>> - Afficher le texte des messages précédents -
> > > >>> Bonjour,
> > > >>> Personne pour m'aider ?
> > > >>> Salutaions.
> > > >> Et pourquoi tu n'effectue pas un contrôle avant modification d u champ
> > > >> statut et si la valeur est inférieure tu annule la modificatio n.- Masquer le texte des messages précédents -

> > > >> - Afficher le texte des messages précédents -

> > > > Bonsoir Michel,

> > > > Merci pour ta réponse, peut-tu me donner un bout de code pour v oir le
> > > > principe ?

> > > > Salutations

> > > Avec ce genre de code par exemple :

> > > Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
> > > If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
> > > Me.ChampStatut.Undo
> > > Cancel = True
> > > End If
> > > End Sub- Masquer le texte des messages précédents -

> > > - Afficher le texte des messages précédents -

> > Bonjour Michel,

> > C'est pas mal ça me convient.

> > Le champ statut détermine les enregistrements à envoyer, comment peut-
> > on faire pour empêcher lorsque je décide d'envoyer les
> > enregistrements avec statut = 1 de saisir par erreur statut = 1 a lors
> > que je dois saisir statut = 2.

> > Salutations

> > ==>Réponse :
> > Petite amélioration pour le code pour éviter de supprimer la vale ur :
> > (hypothèse ou tu ne saisis que des valeurs positives)

> > Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
> > If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
> > Me.ChampStatut.Undo
> > Cancel = True
> > End If
> > End Sub

> > Par contre je ne comprends pas ta nouvelle demande !- Masquer le text e des messages précédents -

> > - Afficher le texte des messages précédents -

> Re bonjour mICHEL,

> Actuellement avec ton code tant que je ne saisie pas un numéro
> supérieur  à
> ceux existant dans le champ statut, la dernière valeur saisie appara ît
> sur le contrôle
> grâce à un Dmax sur le champ statut.

> Je voudrais au moment où je le décide  (j’avais pensé à 3 c ases à
> cocher indépendantes
> car ça m’embête de rajouté 3 champs dans la tbl) interdire la s aisie
> du dernier numéro
> saisie.

> Salutations

> ==> Réponse
> Mon code interdit de saisir dans le champ une valeur inférieure à s a
>  valeur antérieure et pas besoin du Dmax c'est le Undo qui redonne
>  l'ancienne valeur au champ.

> Maintenant si j'ai bien compris, lorsque tu désire envoyer des
>  enregistrements à une certainne valeur de status (pour mieux compr endre
>  il faudrait dire à quoi correspondent ces valeurs du statut) tu so uhaite
>  interdire la saisie de cette valeur de status.

> Si c'est bien cela, tu pourrais mettre dans une table la valeur du stat us
>  utilisé pour sélectionner tes enregistrements à envoyer et tu rajoute
>  une condition (avec DLookup) pour éviter d'utiliser cette valeur.

> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me.Cham pStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le texte des messages précédents -

> - Afficher le texte des messages précédents -

Re Michel,

Le plus simple est de joindre un fichier, des que possible je le
ferais.

Merci pour ton aide , et ta patience.

Salutations- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour Michel,

Je joins un petit exemple de mon formulaire.

http://cjoint.com/?dwkbbZDwo0

Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte et
non pas le champ Statut.

Salutations.
Avatar
Michel__D
Bonjour,

jacques a écrit :
On 19 mar, 16:01, jacques wrote:
On 19 mar, 14:56, "Michel__D"
wrote:





Re,
"jacques" a écrit dans le message de news:
On 19 mar, 12:42, "Michel__D"
wrote:
"jacques" a écrit dans le message de news:
On 18 mar, 20:25, Michel__D
wrote:
jacques a écrit :
On 18 mar, 14:37, Michel__D
wrote:
Bonjour,
jacques a écrit :
On 12 mar, 17:57, jacques wrote:
On 1 mar, 22:14, "3stone" wrote:
Salut,
Une valeur par défaut pour une CàC indépendante ?
Je ne vois pas bien à quoi cela peu servir...
Une valeur par défaut sert à présenter cette valeur lors de la création
d'un nouvel enregistrement... mais comme ici elle est indépendante....
--
A+
Pierre (3stone) Access MVP
Perso:http://www.3stone.be/
MPFA:http://www.mpfa.info/(infosgénérales)
Jacques wrote:
Bonsoir,
Sur mon formulaire J'ai une case à cocher indépendante et je voudrais
conserver sa valeur à
la fermeture du formulaire, mais mon code ne marche pas.
Private Sub Cocher79_AfterUpdate()
If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
reponse = MessageBox(Me.hwnd, "Attention vous allez modifier la
valeur " _
& vbCrLf & vbCrLf & "Voulez vous continuer ?", _
"Demande de confirmation", (mb_yesno +
MB_ICONQUESTION))
If reponse = vbYes Then
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 0
Else
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 1
End If
End If
End Sub
Merci pour voutre aide.
Salutations- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -


Bonjour 3stone,
Je reprends mon post Modifier la propriété DefaultValue, et j'explique
mon problème à résoudre.
Dans ma table j'ai un Champs Statut qui en cours de saison se remplie
de valeur 1 puis 2 , et 3
Adhérent Statut
A 1
B 1
C 1
D 2
E 2
F 2
G 3
H 3
Je voudrais lorsque j'arrive à la période statut 2 empécher la saisie
de 1, puis de 2
lorque je commence la période 3.
Comme je ne voulais pas avoir 3 champ supplémentaires j'ai pensé a
faire une condition
sur trois case à cocher indépendante avec le maintien de la valeur à
la fermeture du formulaire
Salutations- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour,
Personne pour m'aider ?
Salutaions.


Et pourquoi tu n'effectue pas un contrôle avant modification du champ
statut et si la valeur est inférieure tu annule la modification.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonsoir Michel,
Merci pour ta réponse, peut-tu me donner un bout de code pour voir le
principe ?
Salutations


Avec ce genre de code par exemple :
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
C'est pas mal ça me convient.
Le champ statut détermine les enregistrements à envoyer, comment peut-
on faire pour empêcher lorsque je décide d'envoyer les
enregistrements avec statut = 1 de saisir par erreur statut = 1 alors
que je dois saisir statut = 2.
Salutations
==>Réponse :
Petite amélioration pour le code pour éviter de supprimer la valeur :
(hypothèse ou tu ne saisis que des valeurs positives)
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub
Par contre je ne comprends pas ta nouvelle demande !- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re bonjour mICHEL,
Actuellement avec ton code tant que je ne saisie pas un numéro
supérieur à
ceux existant dans le champ statut, la dernière valeur saisie apparaît
sur le contrôle
grâce à un Dmax sur le champ statut.
Je voudrais au moment où je le décide (j'avais pensé à 3 cases à
cocher indépendantes
car ça m'embête de rajouté 3 champs dans la tbl) interdire la saisie
du dernier numéro
saisie.
Salutations
==> Réponse
Mon code interdit de saisir dans le champ une valeur inférieure à sa
valeur antérieure et pas besoin du Dmax c'est le Undo qui redonne
l'ancienne valeur au champ.
Maintenant si j'ai bien compris, lorsque tu désire envoyer des
enregistrements à une certainne valeur de status (pour mieux comprendre
il faudrait dire à quoi correspondent ces valeurs du statut) tu souhaite
interdire la saisie de cette valeur de status.
Si c'est bien cela, tu pourrais mettre dans une table la valeur du status
utilisé pour sélectionner tes enregistrements à envoyer et tu rajoute
une condition (avec DLookup) pour éviter d'utiliser cette valeur.
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me.ChampStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re Michel,

Le plus simple est de joindre un fichier, des que possible je le
ferais.

Merci pour ton aide , et ta patience.

Salutations- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour Michel,

Je joins un petit exemple de mon formulaire.

http://cjoint.com/?dwkbbZDwo0

Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte et
non pas le champ Statut.

Salutations.



Mes questions :

Qui ou quoi change l'état des boutons radios Envoi 1 et Envoi 2 ?

Le bouton radio Envoi 2 peut-il être coché et pas le bouton radio Envoi 1 ?

Si tu réponds oui à la 2ème question, j'ai du mal à comprendre la finalité
de ces boutons radios.

PS:Il faut m'espliquer à quoi servent ces boutons radios Envoi 1 et Envoi 2.
Avatar
jacques
On 20 mar, 19:43, Michel__D
wrote:
Bonjour,

jacques a écrit :





> On 19 mar, 16:01, jacques wrote:
>> On 19 mar, 14:56, "Michel__D"
>> wrote:

>>> Re,
>>> "jacques" a écrit dans le message de news: dd810bae-
>>> On 19 mar, 12:42, "Michel__D"
>>> wrote:
>>>> "jacques" a écrit dans le message de news: 38d62a71
>>>> On 18 mar, 20:25, Michel__D
>>>> wrote:
>>>>> jacques a écrit :
>>>>>> On 18 mar, 14:37, Michel__D
>>>>>> wrote:
>>>>>>> Bonjour,
>>>>>>> jacques a écrit :
>>>>>>>> On 12 mar, 17:57, jacques wrote:
>>>>>>>>> On 1 mar, 22:14, "3stone" wrote:
>>>>>>>>>> Salut,
>>>>>>>>>> Une valeur par défaut pour une CàC indépendante ?
>>>>>>>>>> Je ne vois pas bien à quoi cela peu servir...
>>>>>>>>>> Une valeur par défaut sert à présenter cette valeur lors de la création
>>>>>>>>>> d'un nouvel enregistrement... mais comme ici elle est indépe ndante....
>>>>>>>>>> --
>>>>>>>>>> A+
>>>>>>>>>> Pierre (3stone) Access MVP
>>>>>>>>>> Perso:http://www.3stone.be/
>>>>>>>>>> MPFA:http://www.mpfa.info/(infosgénérales)
>>>>>>>>>> Jacques wrote:
>>>>>>>>>>> Bonsoir,
>>>>>>>>>>> Sur mon formulaire J'ai une case à cocher indépendante et je voudrais
>>>>>>>>>>> conserver sa valeur à
>>>>>>>>>>> la fermeture du formulaire, mais mon code ne marche pas.
>>>>>>>>>>> Private Sub Cocher79_AfterUpdate()
>>>>>>>>>>> If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
>>>>>>>>>>> reponse = MessageBox(Me.hwnd, "Attention vous allez modifie r la
>>>>>>>>>>> valeur " _
>>>>>>>>>>> & vbCrLf & vbCrLf & "Voulez vous continuer ?", _
>>>>>>>>>>> "Demande de confirmation", (mb_yesno +
>>>>>>>>>>> MB_ICONQUESTION))
>>>>>>>>>>> If reponse = vbYes Then
>>>>>>>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
>>>>>>>>>>> Cocher79.DefaultValue = 0
>>>>>>>>>>> Else
>>>>>>>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
>>>>>>>>>>> Cocher79.DefaultValue = 1
>>>>>>>>>>> End If
>>>>>>>>>>> End If
>>>>>>>>>>> End Sub
>>>>>>>>>>> Merci pour voutre aide.
>>>>>>>>>>> Salutations- Masquer le texte des messages précédents -
>>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>>> Bonjour 3stone,
>>>>>>>>> Je reprends mon post Modifier la propriété DefaultValue, et j'explique
>>>>>>>>> mon problème à résoudre.
>>>>>>>>> Dans ma table j'ai un Champs Statut qui en cours de saison se r emplie
>>>>>>>>> de valeur 1 puis 2 , et 3
>>>>>>>>> Adhérent Statut
>>>>>>>>> A 1
>>>>>>>>> B 1
>>>>>>>>> C 1
>>>>>>>>> D 2
>>>>>>>>> E 2
>>>>>>>>> F 2
>>>>>>>>> G 3
>>>>>>>>> H 3
>>>>>>>>> Je voudrais lorsque j'arrive à la période statut 2 empéch er la saisie
>>>>>>>>> de 1, puis de 2
>>>>>>>>> lorque je commence la période 3.
>>>>>>>>> Comme je ne voulais pas avoir 3 champ supplémentaires j'ai pe nsé a
>>>>>>>>> faire une condition
>>>>>>>>> sur trois case à cocher indépendante avec le maintien de la valeur à
>>>>>>>>> la fermeture du formulaire
>>>>>>>>> Salutations- Masquer le texte des messages précédents -
>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>> Bonjour,
>>>>>>>> Personne pour m'aider ?
>>>>>>>> Salutaions.
>>>>>>> Et pourquoi tu n'effectue pas un contrôle avant modification du champ
>>>>>>> statut et si la valeur est inférieure tu annule la modification .- Masquer le texte des messages précédents -
>>>>>>> - Afficher le texte des messages précédents -
>>>>>> Bonsoir Michel,
>>>>>> Merci pour ta réponse, peut-tu me donner un bout de code pour vo ir le
>>>>>> principe ?
>>>>>> Salutations
>>>>> Avec ce genre de code par exemple :
>>>>> Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
>>>>> If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
>>>>> Me.ChampStatut.Undo
>>>>> Cancel = True
>>>>> End If
>>>>> End Sub- Masquer le texte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Bonjour Michel,
>>>> C'est pas mal ça me convient.
>>>> Le champ statut détermine les enregistrements à envoyer, comment peut-
>>>> on faire pour empêcher lorsque je décide d'envoyer les
>>>> enregistrements avec statut = 1 de saisir par erreur statut = 1 alors
>>>> que je dois saisir statut = 2.
>>>> Salutations
>>>> ==>Réponse :
>>>> Petite amélioration pour le code pour éviter de supprimer la val eur :
>>>> (hypothèse ou tu ne saisis que des valeurs positives)
>>>> Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
>>>> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
>>>> Me.ChampStatut.Undo
>>>> Cancel = True
>>>> End If
>>>> End Sub
>>>> Par contre je ne comprends pas ta nouvelle demande !- Masquer le tex te des messages précédents -
>>>> - Afficher le texte des messages précédents -
>>> Re bonjour mICHEL,
>>> Actuellement avec ton code tant que je ne saisie pas un numéro
>>> supérieur  à
>>> ceux existant dans le champ statut, la dernière valeur saisie appar aît
>>> sur le contrôle
>>> grâce à un Dmax sur le champ statut.
>>> Je voudrais au moment où je le décide  (j'avais pensé à 3 c ases à
>>> cocher indépendantes
>>> car ça m'embête de rajouté 3 champs dans la tbl) interdire la s aisie
>>> du dernier numéro
>>> saisie.
>>> Salutations
>>> ==> Réponse
>>> Mon code interdit de saisir dans le champ une valeur inférieure à sa
>>>  valeur antérieure et pas besoin du Dmax c'est le Undo qui redonn e
>>>  l'ancienne valeur au champ.
>>> Maintenant si j'ai bien compris, lorsque tu désire envoyer des
>>>  enregistrements à une certainne valeur de status (pour mieux com prendre
>>>  il faudrait dire à quoi correspondent ces valeurs du statut) tu souhaite
>>>  interdire la saisie de cette valeur de status.
>>> Si c'est bien cela, tu pourrais mettre dans une table la valeur du st atus
>>>  utilisé pour sélectionner tes enregistrements à envoyer et t u rajoute
>>>  une condition (avec DLookup) pour éviter d'utiliser cette valeur .
>>> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me.Ch ampStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le tex te des messages précédents -
>>> - Afficher le texte des messages précédents -
>> Re Michel,

>> Le plus simple est de joindre un fichier, des que possible je le
>> ferais.

>> Merci pour ton aide , et ta patience.

>> Salutations- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

> Bonjour Michel,

> Je joins un petit exemple de mon formulaire.

>http://cjoint.com/?dwkbbZDwo0

> Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte et
> non pas le champ Statut.

> Salutations.

Mes questions :

Qui ou quoi change l'état des boutons radios Envoi 1 et Envoi 2 ?

Le bouton radio Envoi 2 peut-il être coché et pas le bouton radio Env oi 1 ?

Si tu réponds oui à la 2ème question, j'ai du mal à comprendre la finalité
  de ces boutons radios.

PS:Il faut m'espliquer à quoi servent ces boutons radios Envoi 1 et Env oi 2.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonsoir Michel,

1 - C'est l'utilisateur donc moi qui doit changer l'état des boutons.

2 - Non

3 - Les boutons servent à dire si boutons 1 est cocher les
enregistrements dont le N°Envoi =1 ont été envoyer à la fédé
donc ne plus utiliser le numéro1, pareils pour l'autre boutons.

Salutations
utiliser l
Avatar
Michel__D
Bonjour,

jacques a écrit :
On 20 mar, 19:43, Michel__D
wrote:
Bonjour,

jacques a écrit :





On 19 mar, 16:01, jacques wrote:
On 19 mar, 14:56, "Michel__D"
wrote:
Re,
"jacques" a écrit dans le message de news:
On 19 mar, 12:42, "Michel__D"
wrote:
"jacques" a écrit dans le message de news:
On 18 mar, 20:25, Michel__D
wrote:
jacques a écrit :
On 18 mar, 14:37, Michel__D
wrote:
Bonjour,
jacques a écrit :
On 12 mar, 17:57, jacques wrote:
On 1 mar, 22:14, "3stone" wrote:
Salut,
Une valeur par défaut pour une CàC indépendante ?
Je ne vois pas bien à quoi cela peu servir...
Une valeur par défaut sert à présenter cette valeur lors de la création
d'un nouvel enregistrement... mais comme ici elle est indépendante....
--
A+
Pierre (3stone) Access MVP
Perso:http://www.3stone.be/
MPFA:http://www.mpfa.info/(infosgénérales)
Jacques wrote:
Bonsoir,
Sur mon formulaire J'ai une case à cocher indépendante et je voudrais
conserver sa valeur à
la fermeture du formulaire, mais mon code ne marche pas.
Private Sub Cocher79_AfterUpdate()
If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
reponse = MessageBox(Me.hwnd, "Attention vous allez modifier la
valeur " _
& vbCrLf & vbCrLf & "Voulez vous continuer ?", _
"Demande de confirmation", (mb_yesno +
MB_ICONQUESTION))
If reponse = vbYes Then
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 0
Else
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 1
End If
End If
End Sub
Merci pour voutre aide.
Salutations- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -


Bonjour 3stone,
Je reprends mon post Modifier la propriété DefaultValue, et j'explique
mon problème à résoudre.
Dans ma table j'ai un Champs Statut qui en cours de saison se remplie
de valeur 1 puis 2 , et 3
Adhérent Statut
A 1
B 1
C 1
D 2
E 2
F 2
G 3
H 3
Je voudrais lorsque j'arrive à la période statut 2 empécher la saisie
de 1, puis de 2
lorque je commence la période 3.
Comme je ne voulais pas avoir 3 champ supplémentaires j'ai pensé a
faire une condition
sur trois case à cocher indépendante avec le maintien de la valeur à
la fermeture du formulaire
Salutations- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour,
Personne pour m'aider ?
Salutaions.


Et pourquoi tu n'effectue pas un contrôle avant modification du champ
statut et si la valeur est inférieure tu annule la modification..- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonsoir Michel,
Merci pour ta réponse, peut-tu me donner un bout de code pour voir le
principe ?
Salutations


Avec ce genre de code par exemple :
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
C'est pas mal ça me convient.
Le champ statut détermine les enregistrements à envoyer, comment peut-
on faire pour empêcher lorsque je décide d'envoyer les
enregistrements avec statut = 1 de saisir par erreur statut = 1 alors
que je dois saisir statut = 2.
Salutations
==>Réponse :
Petite amélioration pour le code pour éviter de supprimer la valeur :
(hypothèse ou tu ne saisis que des valeurs positives)
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub
Par contre je ne comprends pas ta nouvelle demande !- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re bonjour mICHEL,
Actuellement avec ton code tant que je ne saisie pas un numéro
supérieur à
ceux existant dans le champ statut, la dernière valeur saisie apparaît
sur le contrôle
grâce à un Dmax sur le champ statut.
Je voudrais au moment où je le décide (j'avais pensé à 3 cases à
cocher indépendantes
car ça m'embête de rajouté 3 champs dans la tbl) interdire la saisie
du dernier numéro
saisie.
Salutations
==> Réponse
Mon code interdit de saisir dans le champ une valeur inférieure à sa
valeur antérieure et pas besoin du Dmax c'est le Undo qui redonne
l'ancienne valeur au champ.
Maintenant si j'ai bien compris, lorsque tu désire envoyer des
enregistrements à une certainne valeur de status (pour mieux comprendre
il faudrait dire à quoi correspondent ces valeurs du statut) tu souhaite
interdire la saisie de cette valeur de status.
Si c'est bien cela, tu pourrais mettre dans une table la valeur du status
utilisé pour sélectionner tes enregistrements à envoyer et tu rajoute
une condition (avec DLookup) pour éviter d'utiliser cette valeur..
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me.ChampStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re Michel,
Le plus simple est de joindre un fichier, des que possible je le
ferais.
Merci pour ton aide , et ta patience.
Salutations- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
Je joins un petit exemple de mon formulaire.
http://cjoint.com/?dwkbbZDwo0
Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte et
non pas le champ Statut.
Salutations.


Mes questions :

Qui ou quoi change l'état des boutons radios Envoi 1 et Envoi 2 ?

Le bouton radio Envoi 2 peut-il être coché et pas le bouton radio Envoi 1 ?

Si tu réponds oui à la 2ème question, j'ai du mal à comprendre la finalité
de ces boutons radios.

PS:Il faut m'espliquer à quoi servent ces boutons radios Envoi 1 et Envoi 2.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonsoir Michel,

1 - C'est l'utilisateur donc moi qui doit changer l'état des boutons.

2 - Non

3 - Les boutons servent à dire si boutons 1 est cocher les
enregistrements dont le N°Envoi =1 ont été envoyer à la fédé
donc ne plus utiliser le numéro1, pareils pour l'autre boutons.

Salutations



Donc si j'ai bien compris, tu désire aujourd'hui envoyer les
enregistrements dont le N°Envoi =1, tu coche le bouton radio Envoi 1,
tu lance la procédure d'envoi et pendant cette période il faut
interdire la modif des enregistrements avec N°Envoi =1 ?
=>Solution :
voir ma réponse avec valeur dans une table et test de la valeur
de la table avec l'ancienne valeur du contrôle.

Est-ce que ces enregistrements restent avec le N°Envoi =1 ?

Et s'ils restent à cette valeur il ne faut pas que de nouveaux
enregistrements soient saisis avec cette valeur (N°Envoi =1) d'ou
l'utilisation du DMax, j'ai bon ?

PS:Peux-tu dire à quoi correspondent ces différentes valeurs de
N°Envoi = 1 ou 2 ou 3 ?
Avatar
jacques
On 21 mar, 13:03, Michel__D
wrote:
Bonjour,

jacques a écrit :





> On 20 mar, 19:43, Michel__D
> wrote:
>> Bonjour,

>> jacques a écrit :

>>> On 19 mar, 16:01, jacques wrote:
>>>> On 19 mar, 14:56, "Michel__D"
>>>> wrote:
>>>>> Re,
>>>>> "jacques" a écrit dans le message de news: dd810ba
>>>>> On 19 mar, 12:42, "Michel__D"
>>>>> wrote:
>>>>>> "jacques" a écrit dans le message de news: 38d62a
>>>>>> On 18 mar, 20:25, Michel__D
>>>>>> wrote:
>>>>>>> jacques a écrit :
>>>>>>>> On 18 mar, 14:37, Michel__D >
>>>>>>>> wrote:
>>>>>>>>> Bonjour,
>>>>>>>>> jacques a écrit :
>>>>>>>>>> On 12 mar, 17:57, jacques wrote:
>>>>>>>>>>> On 1 mar, 22:14, "3stone" wrote:
>>>>>>>>>>>> Salut,
>>>>>>>>>>>> Une valeur par défaut pour une CàC indépendante ?
>>>>>>>>>>>> Je ne vois pas bien à quoi cela peu servir...
>>>>>>>>>>>> Une valeur par défaut sert à présenter cette valeur lo rs de la création
>>>>>>>>>>>> d'un nouvel enregistrement... mais comme ici elle est indé pendante....
>>>>>>>>>>>> --
>>>>>>>>>>>> A+
>>>>>>>>>>>> Pierre (3stone) Access MVP
>>>>>>>>>>>> Perso:http://www.3stone.be/
>>>>>>>>>>>> MPFA:http://www.mpfa.info/(infosgénérales)
>>>>>>>>>>>> Jacques wrote:
>>>>>>>>>>>>> Bonsoir,
>>>>>>>>>>>>> Sur mon formulaire J'ai une case à cocher indépendante et je voudrais
>>>>>>>>>>>>> conserver sa valeur à
>>>>>>>>>>>>> la fermeture du formulaire, mais mon code ne marche pas.
>>>>>>>>>>>>> Private Sub Cocher79_AfterUpdate()
>>>>>>>>>>>>> If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
>>>>>>>>>>>>> reponse = MessageBox(Me.hwnd, "Attention vous allez modif ier la
>>>>>>>>>>>>> valeur " _
>>>>>>>>>>>>> & vbCrLf & vbCrLf & "Voulez vous continuer ?", _
>>>>>>>>>>>>> "Demande de confirmation", (mb_yesno +
>>>>>>>>>>>>> MB_ICONQUESTION))
>>>>>>>>>>>>> If reponse = vbYes Then
>>>>>>>>>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
>>>>>>>>>>>>> Cocher79.DefaultValue = 0
>>>>>>>>>>>>> Else
>>>>>>>>>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
>>>>>>>>>>>>> Cocher79.DefaultValue = 1
>>>>>>>>>>>>> End If
>>>>>>>>>>>>> End If
>>>>>>>>>>>>> End Sub
>>>>>>>>>>>>> Merci pour voutre aide.
>>>>>>>>>>>>> Salutations- Masquer le texte des messages précédents -
>>>>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>>>>> Bonjour 3stone,
>>>>>>>>>>> Je reprends mon post Modifier la propriété DefaultValue, et j'explique
>>>>>>>>>>> mon problème à résoudre.
>>>>>>>>>>> Dans ma table j'ai un Champs Statut qui en cours de saison se remplie
>>>>>>>>>>> de valeur 1 puis 2 , et 3
>>>>>>>>>>> Adhérent Statut
>>>>>>>>>>> A 1
>>>>>>>>>>> B 1
>>>>>>>>>>> C 1
>>>>>>>>>>> D 2
>>>>>>>>>>> E 2
>>>>>>>>>>> F 2
>>>>>>>>>>> G 3
>>>>>>>>>>> H 3
>>>>>>>>>>> Je voudrais lorsque j'arrive à la période statut 2 empé cher la saisie
>>>>>>>>>>> de 1, puis de 2
>>>>>>>>>>> lorque je commence la période 3.
>>>>>>>>>>> Comme je ne voulais pas avoir 3 champ supplémentaires j'ai pensé a
>>>>>>>>>>> faire une condition
>>>>>>>>>>> sur trois case à cocher indépendante avec le maintien de la valeur à
>>>>>>>>>>> la fermeture du formulaire
>>>>>>>>>>> Salutations- Masquer le texte des messages précédents -
>>>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>>>> Bonjour,
>>>>>>>>>> Personne pour m'aider ?
>>>>>>>>>> Salutaions.
>>>>>>>>> Et pourquoi tu n'effectue pas un contrôle avant modification du champ
>>>>>>>>> statut et si la valeur est inférieure tu annule la modificati on..- Masquer le texte des messages précédents -
>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>> Bonsoir Michel,
>>>>>>>> Merci pour ta réponse, peut-tu me donner un bout de code pour voir le
>>>>>>>> principe ?
>>>>>>>> Salutations
>>>>>>> Avec ce genre de code par exemple :
>>>>>>> Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
>>>>>>> If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
>>>>>>> Me.ChampStatut.Undo
>>>>>>> Cancel = True
>>>>>>> End If
>>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>>>> - Afficher le texte des messages précédents -
>>>>>> Bonjour Michel,
>>>>>> C'est pas mal ça me convient.
>>>>>> Le champ statut détermine les enregistrements à envoyer, comme nt peut-
>>>>>> on faire pour empêcher lorsque je décide d'envoyer les
>>>>>> enregistrements avec statut = 1 de saisir par erreur statut = 1 alors
>>>>>> que je dois saisir statut = 2.
>>>>>> Salutations
>>>>>> ==>Réponse :
>>>>>> Petite amélioration pour le code pour éviter de supprimer la v aleur :
>>>>>> (hypothèse ou tu ne saisis que des valeurs positives)
>>>>>> Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
>>>>>> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
>>>>>> Me.ChampStatut.Undo
>>>>>> Cancel = True
>>>>>> End If
>>>>>> End Sub
>>>>>> Par contre je ne comprends pas ta nouvelle demande !- Masquer le t exte des messages précédents -
>>>>>> - Afficher le texte des messages précédents -
>>>>> Re bonjour mICHEL,
>>>>> Actuellement avec ton code tant que je ne saisie pas un numéro
>>>>> supérieur  à
>>>>> ceux existant dans le champ statut, la dernière valeur saisie app araît
>>>>> sur le contrôle
>>>>> grâce à un Dmax sur le champ statut.
>>>>> Je voudrais au moment où je le décide  (j'avais pensé à 3 cases à
>>>>> cocher indépendantes
>>>>> car ça m'embête de rajouté 3 champs dans la tbl) interdire la saisie
>>>>> du dernier numéro
>>>>> saisie.
>>>>> Salutations
>>>>> ==> Réponse
>>>>> Mon code interdit de saisir dans le champ une valeur inférieure à sa
>>>>>  valeur antérieure et pas besoin du Dmax c'est le Undo qui redo nne
>>>>>  l'ancienne valeur au champ.
>>>>> Maintenant si j'ai bien compris, lorsque tu désire envoyer des
>>>>>  enregistrements à une certainne valeur de status (pour mieux c omprendre
>>>>>  il faudrait dire à quoi correspondent ces valeurs du statut) t u souhaite
>>>>>  interdire la saisie de cette valeur de status.
>>>>> Si c'est bien cela, tu pourrais mettre dans une table la valeur du status
>>>>>  utilisé pour sélectionner tes enregistrements à envoyer et tu rajoute
>>>>>  une condition (avec DLookup) pour éviter d'utiliser cette vale ur..
>>>>> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me. ChampStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le t exte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Re Michel,
>>>> Le plus simple est de joindre un fichier, des que possible je le
>>>> ferais.
>>>> Merci pour ton aide , et ta patience.
>>>> Salutations- Masquer le texte des messages précédents -
>>>> - Afficher le texte des messages précédents -
>>> Bonjour Michel,
>>> Je joins un petit exemple de mon formulaire.
>>>http://cjoint.com/?dwkbbZDwo0
>>> Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte e t
>>> non pas le champ Statut.
>>> Salutations.
>> Mes questions :

>> Qui ou quoi change l'état des boutons radios Envoi 1 et Envoi 2 ?

>> Le bouton radio Envoi 2 peut-il être coché et pas le bouton radio Envoi 1 ?

>> Si tu réponds oui à la 2ème question, j'ai du mal à comprendre la finalité
>>   de ces boutons radios.

>> PS:Il faut m'espliquer à quoi servent ces boutons radios Envoi 1 et Envoi 2.- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

> Bonsoir Michel,

> 1 - C'est l'utilisateur donc moi qui doit changer l'état des boutons.

> 2 - Non

> 3 - Les boutons servent à dire si boutons 1 est cocher les
> enregistrements dont le N°Envoi =1  ont été envoyer à la f édé
> donc ne plus utiliser le numéro1, pareils pour l'autre boutons.

> Salutations

Donc si j'ai bien compris, tu désire aujourd'hui envoyer les
  enregistrements dont le N°Envoi =1, tu coche le bouton radio Envo i 1,
  tu lance la procédure d'envoi et pendant cette période il faut
  interdire la modif des enregistrements avec N°Envoi =1 ?
=>Solution :
voir ma réponse avec valeur dans une table et test de la valeur
  de la table avec l'ancienne valeur du contrôle.

Est-ce que ces enregistrements restent avec le N°Envoi =1 ?

Et s'ils restent à cette valeur il ne faut pas que de nouveaux
  enregistrements soient saisis avec cette valeur (N°Envoi =1) d'ou
  l'utilisation du DMax, j'ai bon ?

PS:Peux-tu dire à quoi correspondent ces différentes valeurs de
  N°Envoi = 1 ou 2 ou 3 ?- Masquer le texte des messages précéd ents -

- Afficher le texte des messages précédents -



Bonjour Michel,

J'ai trois périodes pour envoyer ma liste des nouveaux adhérents (N),
des renouvelement d'adhésions (R)
et les éventuelles modif (M ou MR) qui se situe pour:
N°Envoi = 1 mi-décembre pour
N°Envoi = 2 mi-mars et
N°Envoi = 3 pour le reste de la saison soit fin juin.

Donc les adhérents inscrit de septembre à mi-décembre le N°Envoi = 1
(sauf si modif après mi-décembre alors il devient 2)
ceux de mi-décembre à mi-mars le N°Envoi = 2 (sauf si modif aprè s mi-
mars alors il devient 3)

Salutations
Avatar
Michel__D
jacques a écrit :
On 21 mar, 13:03, Michel__D
wrote:
Bonjour,

jacques a écrit :





On 20 mar, 19:43, Michel__D
wrote:
Bonjour,
jacques a écrit :
On 19 mar, 16:01, jacques wrote:
On 19 mar, 14:56, "Michel__D"
wrote:
Re,
"jacques" a écrit dans le message de news:
On 19 mar, 12:42, "Michel__D"
wrote:
"jacques" a écrit dans le message de news:
On 18 mar, 20:25, Michel__D
wrote:
jacques a écrit :
On 18 mar, 14:37, Michel__D
wrote:
Bonjour,
jacques a écrit :
On 12 mar, 17:57, jacques wrote:
On 1 mar, 22:14, "3stone" wrote:
Salut,
Une valeur par défaut pour une CàC indépendante ?
Je ne vois pas bien à quoi cela peu servir...
Une valeur par défaut sert à présenter cette valeur lors de la création
d'un nouvel enregistrement... mais comme ici elle est indépendante....
--
A+
Pierre (3stone) Access MVP
Perso:http://www.3stone.be/
MPFA:http://www.mpfa.info/(infosgénérales)
Jacques wrote:
Bonsoir,
Sur mon formulaire J'ai une case à cocher indépendante et je voudrais
conserver sa valeur à
la fermeture du formulaire, mais mon code ne marche pas.
Private Sub Cocher79_AfterUpdate()
If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
reponse = MessageBox(Me.hwnd, "Attention vous allez modifier la
valeur " _
& vbCrLf & vbCrLf & "Voulez vous continuer ?", _
"Demande de confirmation", (mb_yesno +
MB_ICONQUESTION))
If reponse = vbYes Then
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 0
Else
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 1
End If
End If
End Sub
Merci pour voutre aide.
Salutations- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -


Bonjour 3stone,
Je reprends mon post Modifier la propriété DefaultValue, et j'explique
mon problème à résoudre.
Dans ma table j'ai un Champs Statut qui en cours de saison se remplie
de valeur 1 puis 2 , et 3
Adhérent Statut
A 1
B 1
C 1
D 2
E 2
F 2
G 3
H 3
Je voudrais lorsque j'arrive à la période statut 2 empécher la saisie
de 1, puis de 2
lorque je commence la période 3.
Comme je ne voulais pas avoir 3 champ supplémentaires j'ai pensé a
faire une condition
sur trois case à cocher indépendante avec le maintien de la valeur à
la fermeture du formulaire
Salutations- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour,
Personne pour m'aider ?
Salutaions.


Et pourquoi tu n'effectue pas un contrôle avant modification du champ
statut et si la valeur est inférieure tu annule la modification..- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonsoir Michel,
Merci pour ta réponse, peut-tu me donner un bout de code pour voir le
principe ?
Salutations


Avec ce genre de code par exemple :
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
C'est pas mal ça me convient.
Le champ statut détermine les enregistrements à envoyer, comment peut-
on faire pour empêcher lorsque je décide d'envoyer les
enregistrements avec statut = 1 de saisir par erreur statut = 1 alors
que je dois saisir statut = 2.
Salutations
==>Réponse :
Petite amélioration pour le code pour éviter de supprimer la valeur :
(hypothèse ou tu ne saisis que des valeurs positives)
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub
Par contre je ne comprends pas ta nouvelle demande !- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re bonjour mICHEL,
Actuellement avec ton code tant que je ne saisie pas un numéro
supérieur à
ceux existant dans le champ statut, la dernière valeur saisie apparaît
sur le contrôle
grâce à un Dmax sur le champ statut.
Je voudrais au moment où je le décide (j'avais pensé à 3 cases à
cocher indépendantes
car ça m'embête de rajouté 3 champs dans la tbl) interdire la saisie
du dernier numéro
saisie.
Salutations
==> Réponse
Mon code interdit de saisir dans le champ une valeur inférieure à sa
valeur antérieure et pas besoin du Dmax c'est le Undo qui redonne
l'ancienne valeur au champ.
Maintenant si j'ai bien compris, lorsque tu désire envoyer des
enregistrements à une certainne valeur de status (pour mieux comprendre
il faudrait dire à quoi correspondent ces valeurs du statut) tu souhaite
interdire la saisie de cette valeur de status.
Si c'est bien cela, tu pourrais mettre dans une table la valeur du status
utilisé pour sélectionner tes enregistrements à envoyer et tu rajoute
une condition (avec DLookup) pour éviter d'utiliser cette valeur..
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me.ChampStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re Michel,
Le plus simple est de joindre un fichier, des que possible je le
ferais.
Merci pour ton aide , et ta patience.
Salutations- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
Je joins un petit exemple de mon formulaire.
http://cjoint.com/?dwkbbZDwo0
Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte et
non pas le champ Statut.
Salutations.


Mes questions :
Qui ou quoi change l'état des boutons radios Envoi 1 et Envoi 2 ?
Le bouton radio Envoi 2 peut-il être coché et pas le bouton radio Envoi 1 ?
Si tu réponds oui à la 2ème question, j'ai du mal à comprendre la finalité
de ces boutons radios.
PS:Il faut m'espliquer à quoi servent ces boutons radios Envoi 1 et Envoi 2.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonsoir Michel,
1 - C'est l'utilisateur donc moi qui doit changer l'état des boutons.
2 - Non
3 - Les boutons servent à dire si boutons 1 est cocher les
enregistrements dont le N°Envoi =1 ont été envoyer à la fédé
donc ne plus utiliser le numéro1, pareils pour l'autre boutons.
Salutations


Donc si j'ai bien compris, tu désire aujourd'hui envoyer les
enregistrements dont le N°Envoi =1, tu coche le bouton radio Envoi 1,
tu lance la procédure d'envoi et pendant cette période il faut
interdire la modif des enregistrements avec N°Envoi =1 ?
=>Solution :
voir ma réponse avec valeur dans une table et test de la valeur
de la table avec l'ancienne valeur du contrôle.

Est-ce que ces enregistrements restent avec le N°Envoi =1 ?

Et s'ils restent à cette valeur il ne faut pas que de nouveaux
enregistrements soient saisis avec cette valeur (N°Envoi =1) d'ou
l'utilisation du DMax, j'ai bon ?

PS:Peux-tu dire à quoi correspondent ces différentes valeurs de
N°Envoi = 1 ou 2 ou 3 ?- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour Michel,

J'ai trois périodes pour envoyer ma liste des nouveaux adhérents (N),
des renouvelement d'adhésions (R)
et les éventuelles modif (M ou MR) qui se situe pour:
N°Envoi = 1 mi-décembre pour
N°Envoi = 2 mi-mars et
N°Envoi = 3 pour le reste de la saison soit fin juin.

Donc les adhérents inscrit de septembre à mi-décembre le N°Envoi = 1
(sauf si modif après mi-décembre alors il devient 2)
ceux de mi-décembre à mi-mars le N°Envoi = 2 (sauf si modif après mi-
mars alors il devient 3)

Salutations



C'est ce que je préssentais, pour moi cette valeur dois évoluer avec
la date courante (pas besoin de la saisir).

Par contre, tu pourrais stocker la date de modif et la date d'envoi et
tu n'envoie que les enregistrements dont la date de modif est
supérieure à la date d'envoi.
Avatar
jacques
On 21 mar, 19:15, Michel__D
wrote:
jacques a écrit :





> On 21 mar, 13:03, Michel__D
> wrote:
>> Bonjour,

>> jacques a écrit :

>>> On 20 mar, 19:43, Michel__D
>>> wrote:
>>>> Bonjour,
>>>> jacques a écrit :
>>>>> On 19 mar, 16:01, jacques wrote:
>>>>>> On 19 mar, 14:56, "Michel__D" >
>>>>>> wrote:
>>>>>>> Re,
>>>>>>> "jacques" a écrit dans le message de news: dd810
>>>>>>> On 19 mar, 12:42, "Michel__D" d>
>>>>>>> wrote:
>>>>>>>> "jacques" a écrit dans le message de news: 38d6
>>>>>>>> On 18 mar, 20:25, Michel__D >
>>>>>>>> wrote:
>>>>>>>>> jacques a écrit :
>>>>>>>>>> On 18 mar, 14:37, Michel__D id>
>>>>>>>>>> wrote:
>>>>>>>>>>> Bonjour,
>>>>>>>>>>> jacques a écrit :
>>>>>>>>>>>> On 12 mar, 17:57, jacques wrote:
>>>>>>>>>>>>> On 1 mar, 22:14, "3stone" wrote:
>>>>>>>>>>>>>> Salut,
>>>>>>>>>>>>>> Une valeur par défaut pour une CàC indépendante ?
>>>>>>>>>>>>>> Je ne vois pas bien à quoi cela peu servir...
>>>>>>>>>>>>>> Une valeur par défaut sert à présenter cette valeur lors de la création
>>>>>>>>>>>>>> d'un nouvel enregistrement... mais comme ici elle est ind épendante....
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> A+
>>>>>>>>>>>>>> Pierre (3stone) Access MVP
>>>>>>>>>>>>>> Perso:http://www.3stone.be/
>>>>>>>>>>>>>> MPFA:http://www.mpfa.info/(infosgénérales)
>>>>>>>>>>>>>> Jacques wrote:
>>>>>>>>>>>>>>> Bonsoir,
>>>>>>>>>>>>>>> Sur mon formulaire J'ai une case à cocher indépendant e et je voudrais
>>>>>>>>>>>>>>> conserver sa valeur à
>>>>>>>>>>>>>>> la fermeture du formulaire, mais mon code ne marche pas.
>>>>>>>>>>>>>>> Private Sub Cocher79_AfterUpdate()
>>>>>>>>>>>>>>> If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
>>>>>>>>>>>>>>> reponse = MessageBox(Me.hwnd, "Attention vous allez mod ifier la
>>>>>>>>>>>>>>> valeur " _
>>>>>>>>>>>>>>> & vbCrLf & vbCrLf & "Voulez vous continuer ?", _
>>>>>>>>>>>>>>> "Demande de confirmation", (mb_yesno +
>>>>>>>>>>>>>>> MB_ICONQUESTION))
>>>>>>>>>>>>>>> If reponse = vbYes Then
>>>>>>>>>>>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
>>>>>>>>>>>>>>> Cocher79.DefaultValue = 0
>>>>>>>>>>>>>>> Else
>>>>>>>>>>>>>>> Forms![frm Mise à jour]![sfm Mise à jour a].Form!
>>>>>>>>>>>>>>> Cocher79.DefaultValue = 1
>>>>>>>>>>>>>>> End If
>>>>>>>>>>>>>>> End If
>>>>>>>>>>>>>>> End Sub
>>>>>>>>>>>>>>> Merci pour voutre aide.
>>>>>>>>>>>>>>> Salutations- Masquer le texte des messages précédents -
>>>>>>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>>>>>>> Bonjour 3stone,
>>>>>>>>>>>>> Je reprends mon post Modifier la propriété DefaultValue , et j'explique
>>>>>>>>>>>>> mon problème à résoudre.
>>>>>>>>>>>>> Dans ma table j'ai un Champs Statut qui en cours de saison se remplie
>>>>>>>>>>>>> de valeur 1 puis 2 , et 3
>>>>>>>>>>>>> Adhérent Statut
>>>>>>>>>>>>> A 1
>>>>>>>>>>>>> B 1
>>>>>>>>>>>>> C 1
>>>>>>>>>>>>> D 2
>>>>>>>>>>>>> E 2
>>>>>>>>>>>>> F 2
>>>>>>>>>>>>> G 3
>>>>>>>>>>>>> H 3
>>>>>>>>>>>>> Je voudrais lorsque j'arrive à la période statut 2 emp écher la saisie
>>>>>>>>>>>>> de 1, puis de 2
>>>>>>>>>>>>> lorque je commence la période 3.
>>>>>>>>>>>>> Comme je ne voulais pas avoir 3 champ supplémentaires j'a i pensé a
>>>>>>>>>>>>> faire une condition
>>>>>>>>>>>>> sur trois case à cocher indépendante avec le maintien d e la valeur à
>>>>>>>>>>>>> la fermeture du formulaire
>>>>>>>>>>>>> Salutations- Masquer le texte des messages précédents -
>>>>>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>>>>>> Bonjour,
>>>>>>>>>>>> Personne pour m'aider ?
>>>>>>>>>>>> Salutaions.
>>>>>>>>>>> Et pourquoi tu n'effectue pas un contrôle avant modificatio n du champ
>>>>>>>>>>> statut et si la valeur est inférieure tu annule la modifica tion..- Masquer le texte des messages précédents -
>>>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>>>> Bonsoir Michel,
>>>>>>>>>> Merci pour ta réponse, peut-tu me donner un bout de code pou r voir le
>>>>>>>>>> principe ?
>>>>>>>>>> Salutations
>>>>>>>>> Avec ce genre de code par exemple :
>>>>>>>>> Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
>>>>>>>>> If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
>>>>>>>>> Me.ChampStatut.Undo
>>>>>>>>> Cancel = True
>>>>>>>>> End If
>>>>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>>> Bonjour Michel,
>>>>>>>> C'est pas mal ça me convient.
>>>>>>>> Le champ statut détermine les enregistrements à envoyer, com ment peut-
>>>>>>>> on faire pour empêcher lorsque je décide d'envoyer les
>>>>>>>> enregistrements avec statut = 1 de saisir par erreur statut = 1 alors
>>>>>>>> que je dois saisir statut = 2.
>>>>>>>> Salutations
>>>>>>>> ==>Réponse :
>>>>>>>> Petite amélioration pour le code pour éviter de supprimer la valeur :
>>>>>>>> (hypothèse ou tu ne saisis que des valeurs positives)
>>>>>>>> Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
>>>>>>>> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
>>>>>>>> Me.ChampStatut.Undo
>>>>>>>> Cancel = True
>>>>>>>> End If
>>>>>>>> End Sub
>>>>>>>> Par contre je ne comprends pas ta nouvelle demande !- Masquer le texte des messages précédents -
>>>>>>>> - Afficher le texte des messages précédents -
>>>>>>> Re bonjour mICHEL,
>>>>>>> Actuellement avec ton code tant que je ne saisie pas un numéro
>>>>>>> supérieur  à
>>>>>>> ceux existant dans le champ statut, la dernière valeur saisie a pparaît
>>>>>>> sur le contrôle
>>>>>>> grâce à un Dmax sur le champ statut.
>>>>>>> Je voudrais au moment où je le décide  (j'avais pensé à 3 cases à
>>>>>>> cocher indépendantes
>>>>>>> car ça m'embête de rajouté 3 champs dans la tbl) interdire la saisie
>>>>>>> du dernier numéro
>>>>>>> saisie.
>>>>>>> Salutations
>>>>>>> ==> Réponse
>>>>>>> Mon code interdit de saisir dans le champ une valeur inférieure à sa
>>>>>>>  valeur antérieure et pas besoin du Dmax c'est le Undo qui re donne
>>>>>>>  l'ancienne valeur au champ.
>>>>>>> Maintenant si j'ai bien compris, lorsque tu désire envoyer des
>>>>>>>  enregistrements à une certainne valeur de status (pour mieux comprendre
>>>>>>>  il faudrait dire à quoi correspondent ces valeurs du statut) tu souhaite
>>>>>>>  interdire la saisie de cette valeur de status.
>>>>>>> Si c'est bien cela, tu pourrais mettre dans une table la valeur d u status
>>>>>>>  utilisé pour sélectionner tes enregistrements à envoyer et tu rajoute
>>>>>>>  une condition (avec DLookup) pour éviter d'utiliser cette va leur..
>>>>>>> If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(M e.ChampStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le texte des messages précédents -
>>>>>>> - Afficher le texte des messages précédents -
>>>>>> Re Michel,
>>>>>> Le plus simple est de joindre un fichier, des que possible je le
>>>>>> ferais.
>>>>>> Merci pour ton aide , et ta patience.
>>>>>> Salutations- Masquer le texte des messages précédents -
>>>>>> - Afficher le texte des messages précédents -
>>>>> Bonjour Michel,
>>>>> Je joins un petit exemple de mon formulaire.
>>>>>http://cjoint.com/?dwkbbZDwo0
>>>>> Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte et
>>>>> non pas le champ Statut.
>>>>> Salutations.
>>>> Mes questions :
>>>> Qui ou quoi change l'état des boutons radios Envoi 1 et Envoi 2 ?
>>>> Le bouton radio Envoi 2 peut-il être coché et pas le bouton radi o Envoi 1 ?
>>>> Si tu réponds oui à la 2ème question, j'ai du mal à comprend re la finalité
>>>>   de ces boutons radios.
>>>> PS:Il faut m'espliquer à quoi servent ces boutons radios Envoi 1 e t Envoi 2.- Masquer le texte des messages précédents -
>>>> - Afficher le texte des messages précédents -
>>> Bonsoir Michel,
>>> 1 - C'est l'utilisateur donc moi qui doit changer l'état des bouton s.
>>> 2 - Non
>>> 3 - Les boutons servent à dire si boutons 1 est cocher les
>>> enregistrements dont le N°Envoi =1  ont été envoyer à la fédé
>>> donc ne plus utiliser le numéro1, pareils pour l'autre boutons.
>>> Salutations
>> Donc si j'ai bien compris, tu désire aujourd'hui envoyer les
>>   enregistrements dont le N°Envoi =1, tu coche le bouton radio E nvoi 1,
>>   tu lance la procédure d'envoi et pendant cette période il faut
>>   interdire la modif des enregistrements avec N°Envoi =1 ?
>> =>Solution :
>> voir ma réponse avec valeur dans une table et test de la valeur
>>   de la table avec l'ancienne valeur du contrôle.

>> Est-ce que ces enregistrements restent avec le N°Envoi =1 ?

>> Et s'ils restent à cette valeur il ne faut pas que de nouveaux
>>   enregistrements soient saisis avec cette valeur (N°Envoi =1) d 'ou
>>   l'utilisation du DMax, j'ai bon ?

>> PS:Peux-tu dire à quoi correspondent ces différentes valeurs de
>>   N°Envoi = 1 ou 2 ou 3 ?- Masquer le texte des messages préc édents -

>> - Afficher le texte des messages précédents -

> Bonjour Michel,

> J'ai trois périodes pour envoyer ma liste des nouveaux adhérents (N ),
> des renouvelement d'adhésions (R)
> et les éventuelles modif  (M ou MR) qui se situe pour:
> N°Envoi = 1 mi-décembre pour
> N°Envoi = 2 mi-mars et
> N°Envoi = 3 pour le reste de la saison soit fin juin.

> Donc les adhérents inscrit de septembre à mi-décembre le N°Envo i = 1
> (sauf si modif après mi-décembre alors il devient 2)
> ceux de mi-décembre à mi-mars  le N°Envoi = 2 (sauf si modif après mi-
> mars alors il devient 3)

> Salutations

C'est ce que je préssentais, pour moi cette valeur dois évoluer avec
  la date courante (pas besoin de la saisir).
...

plus de détails »- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour Michel,

Si tu penses que c'est la solution tu peux me faire une exquise de
code car moi
je ne vois pas comment faire (faut-il ajouté un champ , une table ?)
Une petite remarque j'aurais besion à un moment ou un autre du N°Envoi
car lorsque
je tranforme le fichier Access en Excell pour l'envoyer je dois
fussionner le champ
statut et N°Envoi pour obtenir suivant la pèriode N 1, N 2, ou N3.

Salutations
Avatar
Michel__D
jacques a écrit :
On 21 mar, 19:15, Michel__D
wrote:
jacques a écrit :





On 21 mar, 13:03, Michel__D
wrote:
Bonjour,
jacques a écrit :
On 20 mar, 19:43, Michel__D
wrote:
Bonjour,
jacques a écrit :
On 19 mar, 16:01, jacques wrote:
On 19 mar, 14:56, "Michel__D"
wrote:
Re,
"jacques" a écrit dans le message de news:
On 19 mar, 12:42, "Michel__D"
wrote:
"jacques" a écrit dans le message de news:
On 18 mar, 20:25, Michel__D
wrote:
jacques a écrit :
On 18 mar, 14:37, Michel__D
wrote:
Bonjour,
jacques a écrit :
On 12 mar, 17:57, jacques wrote:
On 1 mar, 22:14, "3stone" wrote:
Salut,
Une valeur par défaut pour une CàC indépendante ?
Je ne vois pas bien à quoi cela peu servir...
Une valeur par défaut sert à présenter cette valeur lors de la création
d'un nouvel enregistrement... mais comme ici elle est indépendante....
--
A+
Pierre (3stone) Access MVP
Perso:http://www.3stone.be/
MPFA:http://www.mpfa.info/(infosgénérales)
Jacques wrote:
Bonsoir,
Sur mon formulaire J'ai une case à cocher indépendante et je voudrais
conserver sa valeur à
la fermeture du formulaire, mais mon code ne marche pas.
Private Sub Cocher79_AfterUpdate()
If Cocher79.Value = -1 Or Cocher79.Value = 0 Then
reponse = MessageBox(Me.hwnd, "Attention vous allez modifier la
valeur " _
& vbCrLf & vbCrLf & "Voulez vous continuer ?", _
"Demande de confirmation", (mb_yesno +
MB_ICONQUESTION))
If reponse = vbYes Then
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 0
Else
Forms![frm Mise à jour]![sfm Mise à jour a].Form!
Cocher79.DefaultValue = 1
End If
End If
End Sub
Merci pour voutre aide.
Salutations- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -


Bonjour 3stone,
Je reprends mon post Modifier la propriété DefaultValue, et j'explique
mon problème à résoudre.
Dans ma table j'ai un Champs Statut qui en cours de saison se remplie
de valeur 1 puis 2 , et 3
Adhérent Statut
A 1
B 1
C 1
D 2
E 2
F 2
G 3
H 3
Je voudrais lorsque j'arrive à la période statut 2 empécher la saisie
de 1, puis de 2
lorque je commence la période 3.
Comme je ne voulais pas avoir 3 champ supplémentaires j'ai pensé a
faire une condition
sur trois case à cocher indépendante avec le maintien de la valeur à
la fermeture du formulaire
Salutations- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour,
Personne pour m'aider ?
Salutaions.


Et pourquoi tu n'effectue pas un contrôle avant modification du champ
statut et si la valeur est inférieure tu annule la modification..- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonsoir Michel,
Merci pour ta réponse, peut-tu me donner un bout de code pour voir le
principe ?
Salutations


Avec ce genre de code par exemple :
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Me.ChampStatut.Value < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
C'est pas mal ça me convient.
Le champ statut détermine les enregistrements à envoyer, comment peut-
on faire pour empêcher lorsque je décide d'envoyer les
enregistrements avec statut = 1 de saisir par erreur statut = 1 alors
que je dois saisir statut = 2.
Salutations
==>Réponse :
Petite amélioration pour le code pour éviter de supprimer la valeur :
(hypothèse ou tu ne saisis que des valeurs positives)
Private Sub ChampStatut_BeforeUpdate(Cancel As Integer)
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Then
Me.ChampStatut.Undo
Cancel = True
End If
End Sub
Par contre je ne comprends pas ta nouvelle demande !- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re bonjour mICHEL,
Actuellement avec ton code tant que je ne saisie pas un numéro
supérieur à
ceux existant dans le champ statut, la dernière valeur saisie apparaît
sur le contrôle
grâce à un Dmax sur le champ statut.
Je voudrais au moment où je le décide (j'avais pensé à 3 cases à
cocher indépendantes
car ça m'embête de rajouté 3 champs dans la tbl) interdire la saisie
du dernier numéro
saisie.
Salutations
==> Réponse
Mon code interdit de saisir dans le champ une valeur inférieure à sa
valeur antérieure et pas besoin du Dmax c'est le Undo qui redonne
l'ancienne valeur au champ.
Maintenant si j'ai bien compris, lorsque tu désire envoyer des
enregistrements à une certainne valeur de status (pour mieux comprendre
il faudrait dire à quoi correspondent ces valeurs du statut) tu souhaite
interdire la saisie de cette valeur de status.
Si c'est bien cela, tu pourrais mettre dans une table la valeur du status
utilisé pour sélectionner tes enregistrements à envoyer et tu rajoute
une condition (avec DLookup) pour éviter d'utiliser cette valeur..
If Nz(Me.ChampStatut.Value, -1) < Me.ChampStatut.OldValue Or Nz(Me.ChampStatut.Value, -1) = DLookup("LeChamp", "LaTable") Then- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Re Michel,
Le plus simple est de joindre un fichier, des que possible je le
ferais.
Merci pour ton aide , et ta patience.
Salutations- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
Je joins un petit exemple de mon formulaire.
http://cjoint.com/?dwkbbZDwo0
Tu verras que c'est le champ N°Envoi qu'il faut prendre en compte et
non pas le champ Statut.
Salutations.


Mes questions :
Qui ou quoi change l'état des boutons radios Envoi 1 et Envoi 2 ?
Le bouton radio Envoi 2 peut-il être coché et pas le bouton radio Envoi 1 ?
Si tu réponds oui à la 2ème question, j'ai du mal à comprendre la finalité
de ces boutons radios.
PS:Il faut m'espliquer à quoi servent ces boutons radios Envoi 1 et Envoi 2.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonsoir Michel,
1 - C'est l'utilisateur donc moi qui doit changer l'état des boutons.
2 - Non
3 - Les boutons servent à dire si boutons 1 est cocher les
enregistrements dont le N°Envoi =1 ont été envoyer à la fédé
donc ne plus utiliser le numéro1, pareils pour l'autre boutons.
Salutations


Donc si j'ai bien compris, tu désire aujourd'hui envoyer les
enregistrements dont le N°Envoi =1, tu coche le bouton radio Envoi 1,
tu lance la procédure d'envoi et pendant cette période il faut
interdire la modif des enregistrements avec N°Envoi =1 ?
=>Solution :
voir ma réponse avec valeur dans une table et test de la valeur
de la table avec l'ancienne valeur du contrôle.
Est-ce que ces enregistrements restent avec le N°Envoi =1 ?
Et s'ils restent à cette valeur il ne faut pas que de nouveaux
enregistrements soient saisis avec cette valeur (N°Envoi =1) d'ou
l'utilisation du DMax, j'ai bon ?
PS:Peux-tu dire à quoi correspondent ces différentes valeurs de
N°Envoi = 1 ou 2 ou 3 ?- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -


Bonjour Michel,
J'ai trois périodes pour envoyer ma liste des nouveaux adhérents (N),
des renouvelement d'adhésions (R)
et les éventuelles modif (M ou MR) qui se situe pour:
N°Envoi = 1 mi-décembre pour
N°Envoi = 2 mi-mars et
N°Envoi = 3 pour le reste de la saison soit fin juin.
Donc les adhérents inscrit de septembre à mi-décembre le N°Envoi = 1
(sauf si modif après mi-décembre alors il devient 2)
ceux de mi-décembre à mi-mars le N°Envoi = 2 (sauf si modif après mi-
mars alors il devient 3)
Salutations


C'est ce que je préssentais, pour moi cette valeur dois évoluer avec
la date courante (pas besoin de la saisir).
...

plus de détails »- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour Michel,

Si tu penses que c'est la solution tu peux me faire une exquise de
code car moi
je ne vois pas comment faire (faut-il ajouté un champ , une table ?)
Une petite remarque j'aurais besion à un moment ou un autre du N°Envoi
car lorsque
je tranforme le fichier Access en Excell pour l'envoyer je dois
fussionner le champ
statut et N°Envoi pour obtenir suivant la pèriode N 1, N 2, ou N3.

Salutations




Il te faudrait comme je te l'ai dit un champ date correspondant à la
création/modification de la fiche Adhérent qui prend la valeur de la
date courante lorsque la fiche est créé/modifié (pas de saisie à faire)
et il te faut aussi un champ date qui mémorise la date d'envoi qui sera
alimenté via une requête de mise à jour lorsque tu envoie ta liste d'adhérents.

Puis quand tu effectue l'extraction vers Excel via une requête tu crée
le champ qui fusionne les deux informations :

statut & Iif(Date()>CDate("15/12/" & Year(Date())),2,Iif(Date()>CDate("15/09/" & Year(Date())),1,Iif(Date()>CDate("15/03/" & Year(Date())),3,2)))

PS:Maintenant tu fais comme tu veux, l'avantage de mon approche réduit
le risque d'erreur lié à la saisie et surtout garde une trace datée de
ce que tu fais.
1 2