Rendre une case a cocher inaccessible

  • Initiateur de la discussion Initiateur de la discussion CurLy
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

CurLy

Guest
Bonjour à tous et à toutes.

J'explique mon problème :

J'ai un liste de choix avec des activités différentes (libérales, services, artisanat etc ...)
Plus loin j'ai une case a cocher que je souhaiterais rendre inaccessible lorsque le choix de l'activité correspond aux professions libérales, comment puis-je mettre en place ce système ?

Sachant que j'ai une case associé a la liste de choix qui renvoit le nombre de la catégorie de la profession choisie.

Merci beaucoup pour votre aide 🙂

Tata.
 
Re : Rendre une case a cocher inaccessible

Re,

Le fichier fait 1,4 Mo, c'est un Outil d'aide à la vente pour les assurances sur lequel je travail ... Je sais pas vraiment si j'ai le droit de le communiquer !

Sinon, j'ai regardé mais aucune références n'est manquante, ce peut-il que ce soit un conflit avec une macro deja existante ?
 
Re : Rendre une case a cocher inaccessible

Re,

Le fichier fait 1,4 Mo, c'est un Outil d'aide à la vente pour les assurances sur lequel je travail ... Je sais pas vraiment si j'ai le droit de le communiquer !
Il y a certainement des données confidentielles dedans, donc effectivement : non !

Sinon, j'ai regardé mais aucune références n'est manquante, ce peut-il que ce soit un conflit avec une macro deja existante ?
Tout a fait possible, bien au contraire !

Pour voir ce qui se passe, une possibilité (passer en mode débogage)
1) Tu vas dans l'éditeur VBA, dans le code donné par Robert (par exemple)
2) Sur la ligne : If Range("I748").Value = 1 Or Range("I748").Value = 7 Then 'condition : si I748 est égal à 1 ou 7
Tu places un point d'arrêt (touche F9)
3) Tu fermes l'éditeur, tu vas sur ta feuille avec la liste déroulante, tu sélectionnes une ligne de ta liste.
4) Là, normalement, l'éditeur VBA doit ré-apparaitre avec la ligne en jaune.
5) Tu avance dans ton code en pas à pas (touche F8), jusqu'à rencontrer l'erreur

A+
 
Re : Rendre une case a cocher inaccessible

Re,

C'est fait ... l'erreur concerne la première ligne :

Code:
 Sheets("Feuil1").Shapes("Check Box 21").Visible = False 'la case à cocher est masquée

Merci encore de ton aide 😛
 
Re : Rendre une case a cocher inaccessible

Yeeeeeeesssssss, je crois que je viens de comprendre ...

Ta feuille ou se trouve ta liste déroulante et ta case à cocher, ne doit plus s'appeler "Feuil1" !?

Et effectivement lorsque tu appeles ton objet : Sheets("Feuil1")
Si ta feuille porte un autre nom, tu obtiens bien une erreur 9

Donc il suffit de changer : Sheets("Feuil1") par le vrai nom de la feuille !

Bon appétit, si je ne me trompe pas il est midi passé chez toi.

A+
 
Re : Rendre une case a cocher inaccessible

Re,

Oui la, je vais pas tarder a aller manger 😉

Merci pour la solution, j'espere que ca vient de la tout bêtement, je testerais a mon retour 🙂

Bye et encore merci.
 
Re : Rendre une case a cocher inaccessible

Re,

C'est mieux de réfléchir le ventre plein 🙂

Changement du nom de feuille (Saisie, qu'elle s'appelle, mais comme dans l'editeur VBA y'avais marqué Feuil1 ... ben j'avais pas fait gaffe ...), ca MARCHE !

Donc un grand merçi a tous ce que sont intervenus dans le but de m'aider, ce forum est vraiment top, comptez sur moi pour vous faire de la pub 😉

Tata bisous 🙂
 
Re : Rendre une case a cocher inaccessible

Bonjour,

Je fais remonter le sujet car j'ai un nouveau problème ...

Lorsque j'ouvre 2 classeurs j'ai une erreur d'execution qui s'affiche ... :

Code:
Erreur d'exécution '-2147024809 (80070057)':
L'élément portant ce nom est introuvable.

Surement en rapport avec la macro ... je vous redonne le code :

Code:
Private Sub Worksheet_Calculate() 'à chaque calcul de l'onglet "Feuil2"
If Range("I748").Value = 1 Or Range("I748").Value = 7 Then  'condition  si I748 est égal à 1 ou 7
    Sheets("Saisie").Shapes("Check Box 21").Visible = False 'la case à cocher est masquée
Else 'sinon
    Sheets("Saisie").Shapes("Check Box 21").Visible = True 'la case à cocher est visible
End If
End Sub

Ne peut on pas définir un classeur a la macro pour qu'elle n'interfère pas avec les autres classeurs ouvert ?

Merci encore 🙂
 
Re : Rendre une case a cocher inaccessible

Rofl, j'ai crié trop vite a l'aide 🙂

En fouinant un peu, j'ai trouvé la solution :

Mettre Workbooks("nomduclasseur.xls"). devant les 2 lignes Sheets("Saisie") ...

Tata 🙂
 
Re : Rendre une case a cocher inaccessible

Bonjour,

Je fais remonter le sujet car j'ai le même problème que la dernière fois mais ce coup-ci c'est concernant une case ou l'on doit saisir un montant (libre)

Je m'explique :
Si la catégorie sociaux professionnel est égale à 1 (A1=1 on va dire) alors il faudrait que je bloque la saisie dans une cellule donnée (B4 par exemple)... vous me comprenez ?

Sinon au pire, je vous fait un petit xls avec un exemple ^^

Merci de votre aide, ca devrait être plus simple que pour une case a cocher je pense 🙂

Tata.
 
Re : Rendre une case a cocher inaccessible

Salut,

Bon j'ai mis ce code en place avec l'ancien, mais ca marche pas, sinon au pire on peut faire remonter une msgbox mais comme précédemment, je sais pas faire ... J'ai pas beaucoup de temps disponible en plus pour chercher sur Google étant donné que je suis en formation :/

Code:
Sub Worksheet_Calculate() 'à chaque calcul de l'onglet "Feuil2"
If Range("I748").Value = 1 Then  'condition  si I748 est égal à 1 ou 7
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 21").Visible = False  'la case à cocher est masquée
    [COLOR="Red"]Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Range("E178").Locked = True[/COLOR]
Else 'sinon
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 21").Visible = True 'la case à cocher est visible
    [COLOR="Red"]Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Range("E178").Locked = False[/COLOR]
End If
If Range("C998").Value = 1 Then  'condition  si C998 est égal à 1
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 20").Visible = False  'la case à cocher est masquée
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 193").Visible = False  'la case à cocher est masquée
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 168").Visible = False  'la case à cocher est masquée
Else 'sinon
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 20").Visible = True 'la case à cocher est visible
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 193").Visible = True 'la case à cocher est visible
    Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Shapes("Check Box 168").Visible = True 'la case à cocher est visible
End If
End Sub

Les lignes en rouge ont donc été rajouté, mais ca marche pas :/

Merci de votre aide encore une fois 🙂

à+
 
Re : Rendre une case a cocher inaccessible

Salut,

En fait, ça fonctionne, il fallait juste vérouiller la feuille !

Cependant j'ai une erreur de débogage :

Impossible de définir la propriété Locked de la classe Range.

C'est sur : Workbooks("OAV_PAPI_3 NC.xls").Sheets("Saisie").Range("E178").Locked = True
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
358
P
Réponses
4
Affichages
908
Polo94100
P
T
Réponses
8
Affichages
927
Thomexcel
T
P
Réponses
1
Affichages
1 K
L
Réponses
5
Affichages
2 K
A
Réponses
12
Affichages
2 K
AnjyD
A
M
  • Question Question
Réponses
8
Affichages
3 K
J
Réponses
1
Affichages
763
Compte Supprimé 979
C
N
Réponses
9
Affichages
2 K
N
Réponses
17
Affichages
2 K
Retour