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

blocage d'un champ formulaire puis suite

8 réponses
Avatar
Paul Nyemeck
Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule - Poids Net

dans lequel je saisie des données de la récole avec 2 champs facultatifs
(Origine et planteur) selon le type de produit c'est à dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois pas être
actif,
si dans le champ produit on a "PV" alors le champ origine est bloqué et on
passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo

8 réponses

Avatar
Fabien
Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule - Poids Net

dans lequel je saisie des données de la récole avec 2 champs facultatifs
(Origine et planteur) selon le type de produit c'est à dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois pas être
actif,
si dans le champ produit on a "PV" alors le champ origine est bloqué et on
passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo


Salut

En supposant que Produit est une liste,
moi j'aurais mis ça :

Sub Produit_afterupdate()
Me.PlanteurC.Enable= me.Produit.column(1)="PI"
Me.Origine.Enable=Me.Produit.column(1)="PV"
End sub

Enable désactive la zone rendant son accés impossible.
@+

Avatar
Nyepalo
Bonjour Fabien et merci de ta réponse que j'ai essayé et qui ne résout pas
véritablement mon problème. Je crois que je l'ai mal énoncé, je reprends

j'ai 2 origines de produit : industriel (PI) et villageois (PV)
Si élément du contrôle liste produit =''PI''
Alors donne le contrôle à élément origine bloque et bloque contrôle de
élément planteur
Sinon bloque le contrôle à l'élément origine et donne le contrôle à
élément planteur
Fin

Le champ "origine" est intercalé entre les contrôle produit et planteur
(Produit - Origine - Planteur)
Tentative de traduction

Sub Origine_afterupdate()
If me.Produit.column(1)="PI" Then Me.Origine.Enable (SetFocus)
me.planteur.Locked
Else Me.Origine.Locked
Me.planteur.SetFocus
End If

Voila si je peux être orienté une fois de plus

Merci



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

Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule - Poids Net

dans lequel je saisie des données de la récole avec 2 champs facultatifs
(Origine et planteur) selon le type de produit c'est à dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois pas
être actif,
si dans le champ produit on a "PV" alors le champ origine est bloqué et
on passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo
Salut

En supposant que Produit est une liste,
moi j'aurais mis ça :

Sub Produit_afterupdate()
Me.PlanteurC.Enable= me.Produit.column(1)="PI"
Me.Origine.Enable=Me.Produit.column(1)="PV"
End sub

Enable désactive la zone rendant son accés impossible.
@+



Avatar
Nyepalo
Voila fais ceci marche mais pas la suite de la condition alors

Private Sub Type_AfterUpdate()

If Me.Type.Column(1) = "PV" Then Me.Origine.Locked = True
Me.Planteur.SetFocus
End Sub
*-----------------------------------------
par contre ceci ne va pas avec le code ci-dessus
'Else
'If Me.Type.Column(1) = "PI" Then
'Me.Origine.SetFocus
'Me.Planteur.Locked = True
'End If
End Sub


"Nyepalo" a écrit dans le message de news:
%23c%
Bonjour Fabien et merci de ta réponse que j'ai essayé et qui ne résout pas
véritablement mon problème. Je crois que je l'ai mal énoncé, je reprends

j'ai 2 origines de produit : industriel (PI) et villageois (PV)
Si élément du contrôle liste produit =''PI''
Alors donne le contrôle à élément origine bloque et bloque contrôle de
élément planteur
Sinon bloque le contrôle à l'élément origine et donne le contrôle à
élément planteur
Fin

Le champ "origine" est intercalé entre les contrôle produit et planteur
(Produit - Origine - Planteur)
Tentative de traduction

Sub Origine_afterupdate()
If me.Produit.column(1)="PI" Then Me.Origine.Enable (SetFocus)
me.planteur.Locked
Else Me.Origine.Locked
Me.planteur.SetFocus
End If

Voila si je peux être orienté une fois de plus

Merci



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

Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule - Poids Net

dans lequel je saisie des données de la récole avec 2 champs facultatifs
(Origine et planteur) selon le type de produit c'est à dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois pas
être actif,
si dans le champ produit on a "PV" alors le champ origine est bloqué et
on passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo
Salut

En supposant que Produit est une liste,
moi j'aurais mis ça :

Sub Produit_afterupdate()
Me.PlanteurC.Enable= me.Produit.column(1)="PI"
Me.Origine.Enable=Me.Produit.column(1)="PV"
End sub

Enable désactive la zone rendant son accés impossible.
@+







Avatar
Eric
Bonjour,

Et avec, sous réserve d'avoir compris le pb:

If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True
Me.Origine.SetFocus
End If


en supposant que la liste Type peut recevoir les valeurs PI, PV et d'autres.

Voila fais ceci marche mais pas la suite de la condition alors

Private Sub Type_AfterUpdate()

If Me.Type.Column(1) = "PV" Then Me.Origine.Locked = True
Me.Planteur.SetFocus
End Sub
*-----------------------------------------
par contre ceci ne va pas avec le code ci-dessus
'Else
'If Me.Type.Column(1) = "PI" Then
'Me.Origine.SetFocus
'Me.Planteur.Locked = True
'End If
End Sub


"Nyepalo" a écrit dans le message de news:
%23c%
Bonjour Fabien et merci de ta réponse que j'ai essayé et qui ne résout pas
véritablement mon problème. Je crois que je l'ai mal énoncé, je reprends

j'ai 2 origines de produit : industriel (PI) et villageois (PV)
Si élément du contrôle liste produit =''PI''
Alors donne le contrôle à élément origine bloque et bloque contrôle de
élément planteur
Sinon bloque le contrôle à l'élément origine et donne le contrôle à
élément planteur
Fin

Le champ "origine" est intercalé entre les contrôle produit et planteur
(Produit - Origine - Planteur)
Tentative de traduction

Sub Origine_afterupdate()
If me.Produit.column(1)="PI" Then Me.Origine.Enable (SetFocus)
me.planteur.Locked
Else Me.Origine.Locked
Me.planteur.SetFocus
End If

Voila si je peux être orienté une fois de plus

Merci



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

Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule - Poids Net

dans lequel je saisie des données de la récole avec 2 champs facultatifs
(Origine et planteur) selon le type de produit c'est à dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois pas
être actif,
si dans le champ produit on a "PV" alors le champ origine est bloqué et
on passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo
Salut

En supposant que Produit est une liste,
moi j'aurais mis ça :

Sub Produit_afterupdate()
Me.PlanteurC.Enable= me.Produit.column(1)="PI"
Me.Origine.Enable=Me.Produit.column(1)="PV"
End sub

Enable désactive la zone rendant son accés impossible.
@+







--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




Avatar
Fabien
Salut Eric,
J'ajouterais
If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.Locked = False

Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True
Me.Origine.Locked = false

Me.Origine.SetFocus
End If



Bonjour,

Et avec, sous réserve d'avoir compris le pb:

If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True
Me.Origine.SetFocus
End If


en supposant que la liste Type peut recevoir les valeurs PI, PV et
d'autres.

Voila fais ceci marche mais pas la suite de la condition alors

Private Sub Type_AfterUpdate()

If Me.Type.Column(1) = "PV" Then Me.Origine.Locked = True
Me.Planteur.SetFocus
End Sub
*-----------------------------------------
par contre ceci ne va pas avec le code ci-dessus
'Else
'If Me.Type.Column(1) = "PI" Then
'Me.Origine.SetFocus
'Me.Planteur.Locked = True
'End If
End Sub


"Nyepalo" a écrit dans le message de news:
%23c%
Bonjour Fabien et merci de ta réponse que j'ai essayé et qui ne
résout pas véritablement mon problème. Je crois que je l'ai mal
énoncé, je reprends

j'ai 2 origines de produit : industriel (PI) et villageois (PV)
Si élément du contrôle liste produit =''PI''
Alors donne le contrôle à élément origine bloque et bloque
contrôle de élément planteur
Sinon bloque le contrôle à l'élément origine et donne le contrôle
à élément planteur
Fin

Le champ "origine" est intercalé entre les contrôle produit et
planteur (Produit - Origine - Planteur)
Tentative de traduction

Sub Origine_afterupdate()
If me.Produit.column(1)="PI" Then Me.Origine.Enable (SetFocus)
me.planteur.Locked
Else Me.Origine.Locked
Me.planteur.SetFocus
End If

Voila si je peux être orienté une fois de plus

Merci



"Fabien" a écrit dans le message de
news:
Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule -
Poids Net

dans lequel je saisie des données de la récole avec 2 champs
facultatifs (Origine et planteur) selon le type de produit c'est à
dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois
pas être actif,
si dans le champ produit on a "PV" alors le champ origine est
bloqué et on passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo
Salut

En supposant que Produit est une liste,
moi j'aurais mis ça :

Sub Produit_afterupdate()
Me.PlanteurC.Enable= me.Produit.column(1)="PI"
Me.Origine.Enable=Me.Produit.column(1)="PV"
End sub

Enable désactive la zone rendant son accés impossible.
@+













Avatar
Eric
Bonjour Fabien,

Yep car si l'auteur vient à changer de choix dans sa liste alors c'était
bloqué. Perso, j'avais pas trop compris le pb, donc j'ai lu rapidement
le code et adapté

Salut Eric,
J'ajouterais
If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.Locked = False

Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True
Me.Origine.Locked = false

Me.Origine.SetFocus
End If





--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr


Avatar
Nyepalo
Bonjour à tous,
J'ai essayé les 2 codes exactement sans succès, la première condition
marche, la 2e non j'ignore la cause.

Merci de vos contribution

NPL


"Fabien" a écrit dans le message de news:
eC%
Salut Eric,
J'ajouterais
If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.Locked = False

Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True
Me.Origine.Locked = false

Me.Origine.SetFocus
End If



Bonjour,

Et avec, sous réserve d'avoir compris le pb:

If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True Me.Origine.SetFocus
End If


en supposant que la liste Type peut recevoir les valeurs PI, PV et
d'autres.

Voila fais ceci marche mais pas la suite de la condition alors

Private Sub Type_AfterUpdate()

If Me.Type.Column(1) = "PV" Then Me.Origine.Locked = True
Me.Planteur.SetFocus
End Sub
*-----------------------------------------
par contre ceci ne va pas avec le code ci-dessus
'Else
'If Me.Type.Column(1) = "PI" Then
'Me.Origine.SetFocus
'Me.Planteur.Locked = True
'End If
End Sub


"Nyepalo" a écrit dans le message de news:
%23c%
Bonjour Fabien et merci de ta réponse que j'ai essayé et qui ne résout
pas véritablement mon problème. Je crois que je l'ai mal énoncé, je
reprends

j'ai 2 origines de produit : industriel (PI) et villageois (PV)
Si élément du contrôle liste produit =''PI''
Alors donne le contrôle à élément origine bloque et bloque contrôle
de élément planteur
Sinon bloque le contrôle à l'élément origine et donne le contrôle à
élément planteur
Fin

Le champ "origine" est intercalé entre les contrôle produit et planteur
(Produit - Origine - Planteur)
Tentative de traduction

Sub Origine_afterupdate()
If me.Produit.column(1)="PI" Then Me.Origine.Enable (SetFocus)
me.planteur.Locked
Else Me.Origine.Locked
Me.planteur.SetFocus
End If

Voila si je peux être orienté une fois de plus

Merci



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

Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule - Poids
Net

dans lequel je saisie des données de la récole avec 2 champs
facultatifs (Origine et planteur) selon le type de produit c'est à
dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois
pas être actif,
si dans le champ produit on a "PV" alors le champ origine est bloqué
et on passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo
Salut

En supposant que Produit est une liste,
moi j'aurais mis ça :

Sub Produit_afterupdate()
Me.PlanteurC.Enable= me.Produit.column(1)="PI"
Me.Origine.Enable=Me.Produit.column(1)="PV"
End sub

Enable désactive la zone rendant son accés impossible.
@+















Avatar
Fabien
Salut,
Fait passer un exemple de ta base par cjoint.com
On y jettera un oeuil ;-)

Bonjour à tous,
J'ai essayé les 2 codes exactement sans succès, la première condition
marche, la 2e non j'ignore la cause.

Merci de vos contribution

NPL


"Fabien" a écrit dans le message de news:
eC%
Salut Eric,
J'ajouterais
If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.Locked = False

Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True
Me.Origine.Locked = false

Me.Origine.SetFocus
End If

Bonjour,

Et avec, sous réserve d'avoir compris le pb:

If Me.Type.Column(1) = "PV" Then
Me.Origine.Locked = True
Me.Planteur.SetFocus
ElseIf Me.Type.Column(1) = "PI" Then
Me.Planteur.Locked = True Me.Origine.SetFocus
End If


en supposant que la liste Type peut recevoir les valeurs PI, PV et
d'autres.

Voila fais ceci marche mais pas la suite de la condition alors

Private Sub Type_AfterUpdate()

If Me.Type.Column(1) = "PV" Then Me.Origine.Locked = True
Me.Planteur.SetFocus
End Sub
*-----------------------------------------
par contre ceci ne va pas avec le code ci-dessus
'Else
'If Me.Type.Column(1) = "PI" Then
'Me.Origine.SetFocus
'Me.Planteur.Locked = True
'End If
End Sub


"Nyepalo" a écrit dans le message de news:
%23c%
Bonjour Fabien et merci de ta réponse que j'ai essayé et qui ne résout
pas véritablement mon problème. Je crois que je l'ai mal énoncé, je
reprends

j'ai 2 origines de produit : industriel (PI) et villageois (PV)
Si élément du contrôle liste produit =''PI''
Alors donne le contrôle à élément origine bloque et bloque contrôle
de élément planteur
Sinon bloque le contrôle à l'élément origine et donne le contrôle à
élément planteur
Fin

Le champ "origine" est intercalé entre les contrôle produit et planteur
(Produit - Origine - Planteur)
Tentative de traduction

Sub Origine_afterupdate()
If me.Produit.column(1)="PI" Then Me.Origine.Enable (SetFocus)
me.planteur.Locked
Else Me.Origine.Locked
Me.planteur.SetFocus
End If

Voila si je peux être orienté une fois de plus

Merci



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

Bonjour à tous,

Voici mon pb..

J'ai un formulaire qui se présente de la sorte :

Type produit -
Date - Origine - Planteur - Véhicule - Poids
Net

dans lequel je saisie des données de la récole avec 2 champs
facultatifs (Origine et planteur) selon le type de produit c'est à
dire :

Si dans le champ produit on a "PI" alors le champ planteur ne dois
pas être actif,
si dans le champ produit on a "PV" alors le champ origine est bloqué
et on passe la main au champ suivant.

Voila ce que j'ai essayé de faire :

Private Sub Date_AfterUpdate()

If Me!Produit.Column(1) = "PI" Then Me.PlanteurC.Locked = True
Me.Origine.SetFocus
Else Me.Origine.Locked
End If

End Sub

Une autre :

Private Sub PlanteurC_GotFocus()
If Not Me.Origine.Column(1) Then Me.PlanteurC.SetFocus
End Sub

Merci de me mettre sur la bonne voie

Salutation

Nyepalo
Salut

En supposant que Produit est une liste,
moi j'aurais mis ça :

Sub Produit_afterupdate()
Me.PlanteurC.Enable= me.Produit.column(1)="PI"
Me.Origine.Enable=Me.Produit.column(1)="PV"
End sub

Enable désactive la zone rendant son accés impossible.
@+