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 :

liaison de cellules en VBA + Protection d'une cellule


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 18
    Points : 13
    Points
    13
    Par défaut liaison de cellules en VBA + Protection d'une cellule
    Bonjour,

    J'ai une cellule dont le résultat doit être diffèrent selon un choix fait dans une combobox. Dans un cas je veux lier cette cellule avec une autre et ne protéger que cette cellule de ma feuille pour ne pas pouvoir la modifier. Et dans l'autre cas pouvoir écrire dedans.

    Voici le code que j'ai commencé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub ComboBox1_Change()
    If Me.ComboBox1.Value = "Fiche Technique" Then
        Worksheets("feuil1").Range("I11") = Worksheets("feuil2").Range("Q44")
        Worksheets("feuil1").Range("I11") .Locked = True
    Else
     
    End If
     
    End Sub

  2. #2
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    bonjour,

    tu peux essayer comme ceci par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Dim Sh As Worksheet, Sh2 As Worksheet
     
    Set Sh = Worksheets("feuil1")
    Set Sh2 = Worksheets("feuil2")
     
    Sh.Unprotect
     
    If Me.ComboBox1.Value = "Fiche Technique" Then
        Sh.Range("I11").Formula = "=" & Sh2.Range("Q44").Address
        Sh.Range("I11").Locked = True
    Else
        Sh.Range("I11").Locked = False
    End If
     
    Sh.Protect
    pour des raisons de facilité, j'ai passé les feuilles dans une variable
    il ne faut pas oublier de proteger la feuille pour que la protection sur la cellule soit active
    Attention que toutes les cellules on leur propriétés "Locked" sur True par défaut
    Alleï Bonjour chez vous!

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 18
    Points : 13
    Points
    13
    Par défaut
    Merci pour ta réponse,

    Il reste juste un petit problème, Il va chercher la cellule Q44 de la feuille1 et non pas de la feuille 2 ....

  4. #4
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    bonjour,

    oui, juste!
    au temps pour moi!

    il faut remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sh.Range("I11").Formula = "=" & Sh2.Range("Q44").Address
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sh.Range("I11").Formula = "=" & Sh2.Name & "!Q44"
    ou plus simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sh.Range("I11").Formula = "=feuil2!Q44"
    Alleï Bonjour chez vous!

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 18
    Points : 13
    Points
    13
    Par défaut
    C'est parfait comme toujours,

    Merci beaucoup !!!

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/05/2014, 20h58
  2. [XL-2003] Vba [Macro] -Protection d'une cellule
    Par bigey3 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/11/2010, 19h17
  3. Réponses: 3
    Dernier message: 16/10/2007, 16h25
  4. Formater une cellule en VBA pour recevoir une date
    Par *.Har(d)t dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 09/05/2007, 17h39
  5. Réponses: 3
    Dernier message: 13/06/2006, 16h36

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