Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un
formulaire si une certaine date est passée.
A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date
est dépassée on regarde mais on peut pas modifier.
J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en
sort pas !
Pouvez-vous me donner une piste ?
Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est dépassée de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur chargement" (OnLoad) du formulaire : ex: nomducontrol.enabledúlse => aucune saisie possible nomducontrol.locked=true => Le control n'apparaît pas grisé
"dadpub" a écrit :
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un formulaire si une certaine date est passée. A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date est dépassée on regarde mais on peut pas modifier. J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en sort pas ! Pouvez-vous me donner une piste ?
Merci.
Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est dépassée
de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur
chargement" (OnLoad) du formulaire :
ex:
nomducontrol.enabledúlse => aucune saisie possible
nomducontrol.locked=true => Le control n'apparaît pas grisé
"dadpub" a écrit :
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un
formulaire si une certaine date est passée.
A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date
est dépassée on regarde mais on peut pas modifier.
J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en
sort pas !
Pouvez-vous me donner une piste ?
Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est dépassée de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur chargement" (OnLoad) du formulaire : ex: nomducontrol.enabledúlse => aucune saisie possible nomducontrol.locked=true => Le control n'apparaît pas grisé
"dadpub" a écrit :
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un formulaire si une certaine date est passée. A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date est dépassée on regarde mais on peut pas modifier. J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en sort pas ! Pouvez-vous me donner une piste ?
Merci.
dadpub
Salut,
J'ai 250 controles dont 3 ou 4 sous-formulaires ! C'est pas possible de bloquer le formulaire ? Merci
"Dragan" a écrit dans le message de news:
Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est dépassée de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur chargement" (OnLoad) du formulaire : ex: nomducontrol.enabledúlse => aucune saisie possible nomducontrol.locked=true => Le control n'apparaît pas grisé
"dadpub" a écrit :
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un formulaire si une certaine date est passée. A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date est dépassée on regarde mais on peut pas modifier. J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en sort pas ! Pouvez-vous me donner une piste ?
Merci.
Salut,
J'ai 250 controles dont 3 ou 4 sous-formulaires !
C'est pas possible de bloquer le formulaire ?
Merci
"Dragan" <Dragan@discussions.microsoft.com> a écrit dans le message de news:
B920B0AF-0677-45D0-B407-C42B470CA844@microsoft.com...
Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est
dépassée
de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur
chargement" (OnLoad) du formulaire :
ex:
nomducontrol.enabledúlse => aucune saisie possible
nomducontrol.locked=true => Le control n'apparaît pas grisé
"dadpub" a écrit :
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur
un
formulaire si une certaine date est passée.
A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la
date
est dépassée on regarde mais on peut pas modifier.
J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en
sort pas !
Pouvez-vous me donner une piste ?
J'ai 250 controles dont 3 ou 4 sous-formulaires ! C'est pas possible de bloquer le formulaire ? Merci
"Dragan" a écrit dans le message de news:
Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est dépassée de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur chargement" (OnLoad) du formulaire : ex: nomducontrol.enabledúlse => aucune saisie possible nomducontrol.locked=true => Le control n'apparaît pas grisé
"dadpub" a écrit :
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un formulaire si une certaine date est passée. A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date est dépassée on regarde mais on peut pas modifier. J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en sort pas ! Pouvez-vous me donner une piste ?
Merci.
michel chambrillon
Bonjour Pour bloquer le formulaire Me.alloweditsúlse => pas de modifs Me.AllowAdditionsúlse => pas d'ajouts Me.AllowDeletionsúlse => pas de suppressions Voila Michel "dadpub" a écrit dans le message de news:%
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un formulaire si une certaine date est passée. A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date est dépassée on regarde mais on peut pas modifier. J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en sort pas ! Pouvez-vous me donner une piste ?
Merci.
Bonjour
Pour bloquer le formulaire
Me.alloweditsúlse => pas de modifs
Me.AllowAdditionsúlse => pas d'ajouts
Me.AllowDeletionsúlse => pas de suppressions
Voila
Michel
"dadpub" <FO.dadpub@gmail.com.FO> a écrit dans le message de
news:%23rqtSyaSJHA.1172@TK2MSFTNGP03.phx.gbl...
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur
un formulaire si une certaine date est passée.
A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la
date est dépassée on regarde mais on peut pas modifier.
J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en
sort pas !
Pouvez-vous me donner une piste ?
Bonjour Pour bloquer le formulaire Me.alloweditsúlse => pas de modifs Me.AllowAdditionsúlse => pas d'ajouts Me.AllowDeletionsúlse => pas de suppressions Voila Michel "dadpub" a écrit dans le message de news:%
Bonsoir,
Je voudrais que les utilisateurs ne puissent pas modifiés les données sur un formulaire si une certaine date est passée. A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la date est dépassée on regarde mais on peut pas modifier. J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en sort pas ! Pouvez-vous me donner une piste ?
Merci.
Dragan
Ouais, tu peux te servir d'une moulinette comme suit :
Dim Ctrl as Access.Control
For Each Ctrl In Form.Controls IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN Ctrl.EnabledúLSE Ctrl.Locked=TRUE END IF Next
ici je bloque tous les controls du formulaire qui ne sont ni des étiquettes ni des images.
"dadpub" a écrit :
Salut,
J'ai 250 controles dont 3 ou 4 sous-formulaires ! C'est pas possible de bloquer le formulaire ? Merci
"Dragan" a écrit dans le message de news:
> Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est > dépassée > de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur > chargement" (OnLoad) du formulaire : > ex: > nomducontrol.enabledúlse => aucune saisie possible > nomducontrol.locked=true => Le control n'apparaît pas grisé > > > > > > > "dadpub" a écrit : > >> Bonsoir, >> >> Je voudrais que les utilisateurs ne puissent pas modifiés les données sur >> un >> formulaire si une certaine date est passée. >> A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la >> date >> est dépassée on regarde mais on peut pas modifier. >> J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en >> sort pas ! >> Pouvez-vous me donner une piste ? >> >> Merci. >> >> >>
Ouais, tu peux te servir d'une moulinette comme suit :
Dim Ctrl as Access.Control
For Each Ctrl In Form.Controls
IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN
Ctrl.EnabledúLSE
Ctrl.Locked=TRUE
END IF
Next
ici je bloque tous les controls du formulaire qui ne sont ni des étiquettes
ni des images.
"dadpub" a écrit :
Salut,
J'ai 250 controles dont 3 ou 4 sous-formulaires !
C'est pas possible de bloquer le formulaire ?
Merci
"Dragan" <Dragan@discussions.microsoft.com> a écrit dans le message de news:
B920B0AF-0677-45D0-B407-C42B470CA844@microsoft.com...
> Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est
> dépassée
> de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur
> chargement" (OnLoad) du formulaire :
> ex:
> nomducontrol.enabledúlse => aucune saisie possible
> nomducontrol.locked=true => Le control n'apparaît pas grisé
>
>
>
>
>
>
> "dadpub" a écrit :
>
>> Bonsoir,
>>
>> Je voudrais que les utilisateurs ne puissent pas modifiés les données sur
>> un
>> formulaire si une certaine date est passée.
>> A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la
>> date
>> est dépassée on regarde mais on peut pas modifier.
>> J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en
>> sort pas !
>> Pouvez-vous me donner une piste ?
>>
>> Merci.
>>
>>
>>
Ouais, tu peux te servir d'une moulinette comme suit :
Dim Ctrl as Access.Control
For Each Ctrl In Form.Controls IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN Ctrl.EnabledúLSE Ctrl.Locked=TRUE END IF Next
ici je bloque tous les controls du formulaire qui ne sont ni des étiquettes ni des images.
"dadpub" a écrit :
Salut,
J'ai 250 controles dont 3 ou 4 sous-formulaires ! C'est pas possible de bloquer le formulaire ? Merci
"Dragan" a écrit dans le message de news:
> Bonsoir, tu peux essayer à l'ouverture du formulaire si la date est > dépassée > de bloquer l'ensemble des controles. Dans le code VBA de l'événement "Sur > chargement" (OnLoad) du formulaire : > ex: > nomducontrol.enabledúlse => aucune saisie possible > nomducontrol.locked=true => Le control n'apparaît pas grisé > > > > > > > "dadpub" a écrit : > >> Bonsoir, >> >> Je voudrais que les utilisateurs ne puissent pas modifiés les données sur >> un >> formulaire si une certaine date est passée. >> A l'ouverture si la date est pas dépassée on fait ce qu'on veut, si la >> date >> est dépassée on regarde mais on peut pas modifier. >> J'ai un peu tout essayé : Dirty - Snapshot - AllowEditions - mais je m'en >> sort pas ! >> Pouvez-vous me donner une piste ? >> >> Merci. >> >> >>
dadpub
Salut,
"michel chambrillon" a écrit dans le message de news:
Bonjour Pour bloquer le formulaire Me.alloweditsúlse => pas de modifs Me.AllowAdditionsúlse => pas d'ajouts Me.AllowDeletionsúlse => pas de suppressions
J'ai déjà tenter tout ça, ça marche pas ! '---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
Merci
Salut,
"michel chambrillon" <michel.chambrillon@gmail.comAOT> a écrit dans le
message de news: FAEBC908-224F-4E65-AA15-9D5081C05E33@microsoft.com...
Bonjour
Pour bloquer le formulaire
Me.alloweditsúlse => pas de modifs
Me.AllowAdditionsúlse => pas d'ajouts
Me.AllowDeletionsúlse => pas de suppressions
J'ai déjà tenter tout ça, ça marche pas !
'---------code------------------------------
Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date
Dim Mydate2 As Date
Dim NbJour As Integer
Mydate1 = Now
Mydate2 = DateAdmis
NbJour = Mydate1 - Mydate2
If NbJour > 60 Then
Me!Rectangle.BackColor = 255
Me.AllowEdits = False
Else
Me!Rectangle.BackColor = 65408
Me.AllowEdits = True
End If
End Sub
'------fin-code------------------------------
"michel chambrillon" a écrit dans le message de news:
Bonjour Pour bloquer le formulaire Me.alloweditsúlse => pas de modifs Me.AllowAdditionsúlse => pas d'ajouts Me.AllowDeletionsúlse => pas de suppressions
J'ai déjà tenter tout ça, ça marche pas ! '---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
Merci
dadpub
Salut,
"Dragan" a écrit dans le message de news:
Ouais, tu peux te servir d'une moulinette comme suit :
Dim Ctrl as Access.Control
For Each Ctrl In Form.Controls IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN Ctrl.EnabledúLSE Ctrl.Locked=TRUE END IF Next
Marche pas ! J'ai le message "erreur 438" "propriete ou methode non gere par cet objet" Merci.
Salut,
"Dragan" <Dragan@discussions.microsoft.com> a écrit dans le message de news:
83E6E3B4-DBD4-4148-B12B-4880FEA475BC@microsoft.com...
Ouais, tu peux te servir d'une moulinette comme suit :
Dim Ctrl as Access.Control
For Each Ctrl In Form.Controls
IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN
Ctrl.EnabledúLSE
Ctrl.Locked=TRUE
END IF
Next
Marche pas !
J'ai le message "erreur 438"
"propriete ou methode non gere par cet objet"
Merci.
Ouais, tu peux te servir d'une moulinette comme suit :
Dim Ctrl as Access.Control
For Each Ctrl In Form.Controls IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN Ctrl.EnabledúLSE Ctrl.Locked=TRUE END IF Next
Marche pas ! J'ai le message "erreur 438" "propriete ou methode non gere par cet objet" Merci.
dadpub
Re-salut, Petite rectification ! Le code ci-dessous marche .... la première fois que j'ouvre le formulaire. Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche plus ! ! ! C'est quoi ? Merci
'---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
Re-salut,
Petite rectification !
Le code ci-dessous marche .... la première fois que j'ouvre le formulaire.
Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche
plus ! ! !
C'est quoi ?
Merci
'---------code------------------------------
Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date
Dim Mydate2 As Date
Dim NbJour As Integer
Mydate1 = Now
Mydate2 = DateAdmis
NbJour = Mydate1 - Mydate2
If NbJour > 60 Then
Me!Rectangle.BackColor = 255
Me.AllowEdits = False
Else
Me!Rectangle.BackColor = 65408
Me.AllowEdits = True
End If
End Sub
'------fin-code------------------------------
Re-salut, Petite rectification ! Le code ci-dessous marche .... la première fois que j'ouvre le formulaire. Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche plus ! ! ! C'est quoi ? Merci
'---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
michel chambrillon
re Bonjour L'evenement form_open ne me semble pas etre le bon Il faut ecrire ton code pour qu'il s'execute a chaque changement d'enregistrement car si j'ai bien compris dateAdmis est un champ de la table.Donc a l'evenement form_open il tient compte que du dateAdmis du premier enr. Affecte ton code a l'evenement sur activation en VBA form_current @plus Michel "dadpub" a écrit dans le message de news:O$
Re-salut, Petite rectification ! Le code ci-dessous marche .... la première fois que j'ouvre le formulaire. Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche plus ! ! ! C'est quoi ? Merci
'---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
re Bonjour
L'evenement form_open ne me semble pas etre le bon
Il faut ecrire ton code pour qu'il s'execute a chaque changement
d'enregistrement car si j'ai bien compris dateAdmis est un champ de la
table.Donc a l'evenement form_open il tient compte que du dateAdmis du
premier enr.
Affecte ton code a l'evenement sur activation en VBA form_current
@plus
Michel
"dadpub" <FO.dadpub@gmail.com.FO> a écrit dans le message de
news:O$CbhLlSJHA.4452@TK2MSFTNGP03.phx.gbl...
Re-salut,
Petite rectification !
Le code ci-dessous marche .... la première fois que j'ouvre le formulaire.
Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche
plus ! ! !
C'est quoi ?
Merci
'---------code------------------------------
Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date
Dim Mydate2 As Date
Dim NbJour As Integer
Mydate1 = Now
Mydate2 = DateAdmis
NbJour = Mydate1 - Mydate2
If NbJour > 60 Then
Me!Rectangle.BackColor = 255
Me.AllowEdits = False
Else
Me!Rectangle.BackColor = 65408
Me.AllowEdits = True
End If
End Sub
'------fin-code------------------------------
re Bonjour L'evenement form_open ne me semble pas etre le bon Il faut ecrire ton code pour qu'il s'execute a chaque changement d'enregistrement car si j'ai bien compris dateAdmis est un champ de la table.Donc a l'evenement form_open il tient compte que du dateAdmis du premier enr. Affecte ton code a l'evenement sur activation en VBA form_current @plus Michel "dadpub" a écrit dans le message de news:O$
Re-salut, Petite rectification ! Le code ci-dessous marche .... la première fois que j'ouvre le formulaire. Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche plus ! ! ! C'est quoi ? Merci
'---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
dadpub
Bonsoir, C'est sympa de m'aider ... J'étais en train de comprendre ceci, de "maitre Raymond" ! Qu'en penses-tu ? http://groups.google.com/group/microsoft.public.fr.access/browse_thread/thread/2b2983ed9caa7f43/7758a51eb1c0b575?hl=fr&lnk=gst&q=AllowEdits+ne+peut+pas+intervenir+si+dirty+est+%C3%A0+True#7758a51eb1c0b575
Tu me dis de mettre le code sur Activation et pas sur Open. J'ai essayé ce code quasiment sur tous les evenements sans succés. A ce stade il faut peut-etre preciser 2 choses : - J'ai 3 sous-formulaires dans mon formulaire, et je me demande si l'insuccés viendrait pas de là ! - Sur Activation (tiens, tiens !) le code fait tout un tas de vérifications et donc de modifications d'enregistrement, le probleme pourrait venir de là aussi ! Exemple de code : '------------------------------- If Sexe.Value = "Male" Then Menopause.Enabled = False Else Menopause.Enabled = True End If '-------------------------------- @ + Merci.
"michel chambrillon" a écrit dans le message de news:
re Bonjour L'evenement form_open ne me semble pas etre le bon Il faut ecrire ton code pour qu'il s'execute a chaque changement d'enregistrement car si j'ai bien compris dateAdmis est un champ de la table.Donc a l'evenement form_open il tient compte que du dateAdmis du premier enr. Affecte ton code a l'evenement sur activation en VBA form_current @plus Michel "dadpub" a écrit dans le message de news:O$
Re-salut, Petite rectification ! Le code ci-dessous marche .... la première fois que j'ouvre le formulaire. Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche plus ! ! ! C'est quoi ? Merci
'---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
Bonsoir,
C'est sympa de m'aider ...
J'étais en train de comprendre ceci, de "maitre Raymond" ! Qu'en penses-tu ?
http://groups.google.com/group/microsoft.public.fr.access/browse_thread/thread/2b2983ed9caa7f43/7758a51eb1c0b575?hl=fr&lnk=gst&q=AllowEdits+ne+peut+pas+intervenir+si+dirty+est+%C3%A0+True#7758a51eb1c0b575
Tu me dis de mettre le code sur Activation et pas sur Open.
J'ai essayé ce code quasiment sur tous les evenements sans succés.
A ce stade il faut peut-etre preciser 2 choses :
- J'ai 3 sous-formulaires dans mon formulaire, et je me demande si
l'insuccés viendrait pas de là !
- Sur Activation (tiens, tiens !) le code fait tout un tas de vérifications
et donc de modifications d'enregistrement, le probleme pourrait venir de là
aussi !
Exemple de code :
'-------------------------------
If Sexe.Value = "Male" Then
Menopause.Enabled = False
Else
Menopause.Enabled = True
End If
'--------------------------------
@ +
Merci.
"michel chambrillon" <michel.chambrillon@gmail.comAOT> a écrit dans le
message de news: ED2116C7-7274-4FAD-8FDC-0663997922E4@microsoft.com...
re Bonjour
L'evenement form_open ne me semble pas etre le bon
Il faut ecrire ton code pour qu'il s'execute a chaque changement
d'enregistrement car si j'ai bien compris dateAdmis est un champ de la
table.Donc a l'evenement form_open il tient compte que du dateAdmis du
premier enr.
Affecte ton code a l'evenement sur activation en VBA form_current
@plus
Michel
"dadpub" <FO.dadpub@gmail.com.FO> a écrit dans le message de
news:O$CbhLlSJHA.4452@TK2MSFTNGP03.phx.gbl...
Re-salut,
Petite rectification !
Le code ci-dessous marche .... la première fois que j'ouvre le
formulaire.
Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça
marche plus ! ! !
C'est quoi ?
Merci
'---------code------------------------------
Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date
Dim Mydate2 As Date
Dim NbJour As Integer
Mydate1 = Now
Mydate2 = DateAdmis
NbJour = Mydate1 - Mydate2
If NbJour > 60 Then
Me!Rectangle.BackColor = 255
Me.AllowEdits = False
Else
Me!Rectangle.BackColor = 65408
Me.AllowEdits = True
End If
End Sub
'------fin-code------------------------------
Bonsoir, C'est sympa de m'aider ... J'étais en train de comprendre ceci, de "maitre Raymond" ! Qu'en penses-tu ? http://groups.google.com/group/microsoft.public.fr.access/browse_thread/thread/2b2983ed9caa7f43/7758a51eb1c0b575?hl=fr&lnk=gst&q=AllowEdits+ne+peut+pas+intervenir+si+dirty+est+%C3%A0+True#7758a51eb1c0b575
Tu me dis de mettre le code sur Activation et pas sur Open. J'ai essayé ce code quasiment sur tous les evenements sans succés. A ce stade il faut peut-etre preciser 2 choses : - J'ai 3 sous-formulaires dans mon formulaire, et je me demande si l'insuccés viendrait pas de là ! - Sur Activation (tiens, tiens !) le code fait tout un tas de vérifications et donc de modifications d'enregistrement, le probleme pourrait venir de là aussi ! Exemple de code : '------------------------------- If Sexe.Value = "Male" Then Menopause.Enabled = False Else Menopause.Enabled = True End If '-------------------------------- @ + Merci.
"michel chambrillon" a écrit dans le message de news:
re Bonjour L'evenement form_open ne me semble pas etre le bon Il faut ecrire ton code pour qu'il s'execute a chaque changement d'enregistrement car si j'ai bien compris dateAdmis est un champ de la table.Donc a l'evenement form_open il tient compte que du dateAdmis du premier enr. Affecte ton code a l'evenement sur activation en VBA form_current @plus Michel "dadpub" a écrit dans le message de news:O$
Re-salut, Petite rectification ! Le code ci-dessous marche .... la première fois que j'ouvre le formulaire. Mais si je le ferme et re-ouvre sur un autre enregistrement, ben ça marche plus ! ! ! C'est quoi ? Merci
'---------code------------------------------ Private Sub Form_Open(Cancel As Integer)
Dim Mydate1 As Date Dim Mydate2 As Date Dim NbJour As Integer Mydate1 = Now Mydate2 = DateAdmis NbJour = Mydate1 - Mydate2
If NbJour > 60 Then Me!Rectangle.BackColor = 255 Me.AllowEdits = False Else Me!Rectangle.BackColor = 65408 Me.AllowEdits = True End If
End Sub '------fin-code------------------------------
Dragan
si le code marche. Mais tu dois avoir des controls qui n'ont pas de propriétés ENABLED et LOCKED comme des lignes ou des rectangles.
"dadpub" a écrit :
Salut,
"Dragan" a écrit dans le message de news:
> Ouais, tu peux te servir d'une moulinette comme suit : > > Dim Ctrl as Access.Control > > For Each Ctrl In Form.Controls > IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN > Ctrl.EnabledúLSE > Ctrl.Locked=TRUE > END IF > Next
Marche pas ! J'ai le message "erreur 438" "propriete ou methode non gere par cet objet" Merci.
si le code marche. Mais tu dois avoir des controls qui n'ont pas de
propriétés ENABLED et LOCKED comme des lignes ou des rectangles.
"dadpub" a écrit :
Salut,
"Dragan" <Dragan@discussions.microsoft.com> a écrit dans le message de news:
83E6E3B4-DBD4-4148-B12B-4880FEA475BC@microsoft.com...
> Ouais, tu peux te servir d'une moulinette comme suit :
>
> Dim Ctrl as Access.Control
>
> For Each Ctrl In Form.Controls
> IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN
> Ctrl.EnabledúLSE
> Ctrl.Locked=TRUE
> END IF
> Next
Marche pas !
J'ai le message "erreur 438"
"propriete ou methode non gere par cet objet"
Merci.
si le code marche. Mais tu dois avoir des controls qui n'ont pas de propriétés ENABLED et LOCKED comme des lignes ou des rectangles.
"dadpub" a écrit :
Salut,
"Dragan" a écrit dans le message de news:
> Ouais, tu peux te servir d'une moulinette comme suit : > > Dim Ctrl as Access.Control > > For Each Ctrl In Form.Controls > IF Ctrl.ControlType<>AcImage AND Ctrl.ControlType<>AcLabel THEN > Ctrl.EnabledúLSE > Ctrl.Locked=TRUE > END IF > Next
Marche pas ! J'ai le message "erreur 438" "propriete ou methode non gere par cet objet" Merci.