IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Bloquer / Débloquer une cellule contenant une liste déroulante [XL-365]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 291
    Par défaut Bloquer / Débloquer une cellule contenant une liste déroulante
    Bonjour,

    Je voudrais bloquer la saisie dans la cellule "G10" qui contient une liste déroulante par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bud.Range("G10").Locked = True
    J’ai un erreur d’exécution 1004
    Impossible de définir la propriété Locked de la classe Range
    Cette ligne marche très bien si ma cellule ne contient pas de liste déroulante

    Je ne sais pas comment faire

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Par défaut
    Salut,

    Si ta feuille est verrouillée tu ne peux pas le faire.

    Pour que la protection soit effective il faut déverrouiller et reverrouiller la feuille avant et âpres la procédure :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub test1()
    Feuil1.Unprotect
    Feuil1.Range("liste").Locked = True
    Feuil1.Protect
    End Sub

  3. #3
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 291
    Par défaut
    Bonjour,

    oui bien sur ma feuille est déprotégée, le problème semble lié au fait que la cellule contienne une liste déroulante

  4. #4
    Membre chevronné
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Par défaut
    oui bien sur ma feuille est déprotégée, le problème semble lié au fait que la cellule contienne une liste déroulante
    Chez moi pas de soucis sur une cellule avec liste, je n'ai pas d'erreur, la procédure fonctionne normalement.

    Est il possible d'avoir le code entier ?

  5. #5
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 291
    Par défaut
    Bonjour,

    oui effectivement pas de pb sur une liste déroulante classique, j'ai cerné le pb, cela vient du fait que ma liste peut être sélective, c'est à dire que l'on peut taper le 1er ou les 1er caractères de ce que l'on recherche (ex : "C" et la liste s'affiche à partir du 1er item commençant par "C"

    Pour cela j'ai défini la liste des données à dérouler dans le gestionnaire de noms sous le nom "tel":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(Feuille!$A$2;;;NBVAL(Feuille!$A:$A)-1)
    et sur la cellule comportant la liste (cellule "G10") dans la validation de données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(tel;EQUIV(G10&"*";tel;0)-1;;NB.SI(tel;G10&"*"))
    cela marche parfaitement bien mais n'accepte pas le "Locked"

    Bizarre

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/07/2018, 17h17
  2. Réponses: 3
    Dernier message: 04/07/2018, 16h26
  3. Réponses: 10
    Dernier message: 13/05/2018, 01h52
  4. Réponses: 2
    Dernier message: 27/12/2015, 20h13
  5. Réponses: 4
    Dernier message: 20/05/2015, 11h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo