OVH Cloud OVH Cloud

erreur 2164, impossible de désactiver le controle actif

4 réponses
Avatar
jessica
Bonjour a tous,

je travaille sous Access 2002 et Windows 2000, et je suis debutante : j'ai reussi a m'en sortir pour le moment grace a des tutoriaux et à votre aide (j'ai deja pose 2, 3 questions ici).

J'ai un petit probleme sur un de mes formulaires (F_OrdreFabrication). Sur ce formulaire, j'ai un tableau qui represente differentes etapes d'une fabrication, et pour que les etapes soient faites les unes apres les autres, j'ai insere des boutons "OUi/NON" a cocher pour activer puis desactiver les etapes au fur et a mesure (NomControle.Enabled = True ou False).
Lorsque je lance le formulaire F_OrdreFabrication, tout se passe bien, les desactivations et activations se passent normalement. Mon probleme survient lorsque je rentre une valeur dans un controle d'un sous-formulaire de F_OrdreFabrication, lorsque je veux changer d'etapes (donc desactiver/activer les controles), le controle du sous-formulaire bug et j'ai ce message qui apparait : "erreur 2164 : impossible de desactiver le controle actif".
Je ne sais pas comment faire pour palier a ca : j'ai essaye de mettre le focus sur un autre endroit mais ca ne marche pas : de plus, le focus doit deja etre sur le bouton a cocher vu que j'appuie dessus et ensuite ca me desactive ce qu'il faut (je fais NomControle.Setfocus). Je n'ai peut etre pas bien compris ce qu'etait le focus et je dois surement tres mal l'employer.

En tout cas, je vous remercie d'avance

jessica
===============================================================================
enlever le web. pour pouvoir m'envoyer un message
===============================================================================

4 réponses

Avatar
Raymond [mvp]
Bonjour.

pour désactiver un contrôle il ne doit pas être actif, c'est à dire ne pas
avoir le focus.
quand un contrôle texte a le focus le curseur se trouve sur ce contrôle. En
général on n'active/desactive pas un contrôle d'après sa propre valeur mais
la valeur d'un autre champ. si toutefois il faut le faire, il faut déplacer
le focus sur un autre contrôle du formulaire avant de faire quoi que ce
soit.
pour l'exemple, ton contrôle à désactiver s'appelle comment et de quel type
est-il ? (coche)
quelle est le critère pour l'activer/désactiver ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.kynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA


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

je travaille sous Access 2002 et Windows 2000, et je suis debutante : j'ai
reussi a m'en sortir pour le moment grace a des tutoriaux et à votre aide

(j'ai deja pose 2, 3 questions ici).

J'ai un petit probleme sur un de mes formulaires (F_OrdreFabrication). Sur
ce formulaire, j'ai un tableau qui represente differentes etapes d'une

fabrication, et pour que les etapes soient faites les unes apres les autres,
j'ai insere des boutons "OUi/NON" a cocher pour activer puis desactiver les
etapes au fur et a mesure (NomControle.Enabled = True ou False).
Lorsque je lance le formulaire F_OrdreFabrication, tout se passe bien, les
desactivations et activations se passent normalement. Mon probleme survient

lorsque je rentre une valeur dans un controle d'un sous-formulaire de
F_OrdreFabrication, lorsque je veux changer d'etapes (donc
desactiver/activer les controles), le controle du sous-formulaire bug et
j'ai ce message qui apparait : "erreur 2164 : impossible de desactiver le
controle actif".
Je ne sais pas comment faire pour palier a ca : j'ai essaye de mettre le
focus sur un autre endroit mais ca ne marche pas : de plus, le focus doit

deja etre sur le bouton a cocher vu que j'appuie dessus et ensuite ca me
desactive ce qu'il faut (je fais NomControle.Setfocus). Je n'ai peut etre
pas bien compris ce qu'etait le focus et je dois surement tres mal
l'employer.

En tout cas, je vous remercie d'avance

jessica

=========================================================================== == > enlever le web. pour pouvoir m'envoyer un message


=========================================================================== ===


Avatar
jessica
Bonjour Raymond et merci,

pour l'exemple, ton contrôle à désactiver s'appelle comment et de quel type est-il ? (coche)
en fait, j'ai plusieurs controles à désactiver, ils sont tous dans un sous formulaire et c'est chaque fois le dernier sur lequel j'ai appuyé qui bug. Même si ensuite j'ai appuyé sur un contrôle de mon formulaire.

Je te donne la hiérarchie :
mon formulaire F_OrdreFabrication
|> dans détail, j'ai un sous-formulaire F_OrdreFabricationObjet
|> dans F_OrdreFabricationObjet, j'ai le sous formulaire F_TravailMatiere
|> dans F_TravailMatiere j'ai mes controles qui bugguent
le controles s'appellent : LibelleMatiere (texte), DesignationMatiere (texte), Nombre2 (numerique) et PUMatiere (monétaire)

quelle est le critère pour l'activer/désactiver ?
Dans F_OrdreFabricationObjet, j'ai une case a cocher CASEtape1. Lorsque j'ai fini de remplir les contrôles ci-dessus, et bien, je coche la case et ça me désactive mes contrôles et ça m'active la ligne suivante.

Bien sûr, si je décoche, alors ça doit me réactiver les contrôles.

Jessica
============================================================================== enlever web. pour m'envoyer un message
===============================================================================

Avatar
Raymond [mvp]
c'est parce que le dernier sur lequel tu as appuyé a toujout le focus.
déplace le focus hors de tous ces boutons.

pour infos, lis la page:
http://access.seneque.free.fr/sous_formulaires.htm

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.kynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA


"jessica" a écrit dans le message de
news:
Bonjour Raymond et merci,

pour l'exemple, ton contrôle à désactiver s'appelle comment et de quel
type est-il ? (coche)


en fait, j'ai plusieurs controles à désactiver, ils sont tous dans un sous
formulaire et c'est chaque fois le dernier sur lequel j'ai appuyé qui bug.

Même si ensuite j'ai appuyé sur un contrôle de mon formulaire.
Je te donne la hiérarchie :
mon formulaire F_OrdreFabrication
|> dans détail, j'ai un sous-formulaire
F_OrdreFabricationObjet

|> dans F_OrdreFabricationObjet,
j'ai le sous formulaire F_TravailMatiere

|> dans
F_TravailMatiere j'ai mes controles qui bugguent

le controles s'appellent : LibelleMatiere (texte), DesignationMatiere
(texte), Nombre2 (numerique) et PUMatiere (monétaire)


quelle est le critère pour l'activer/désactiver ?
Dans F_OrdreFabricationObjet, j'ai une case a cocher CASEtape1. Lorsque

j'ai fini de remplir les contrôles ci-dessus, et bien, je coche la case et

ça me désactive mes contrôles et ça m'active la ligne suivante.
Bien sûr, si je décoche, alors ça doit me réactiver les contrôles.

Jessica



Avatar
jessica
ok, c'est ce que je vais faire
Encore merci pour l'info

jessica
========================================================================== enlever le web. pour m'envoyer un message
============================================================================