Lire une cellule excel avec virtual basic

Bonjour,

J’ai une macro qui à besoin de lire une cellule pour s'exécuter, mais j'aimerais protéger cette cellule avec la protection de feuille Excel qui empêche du coup l'exécution de la macro.
Est ce qu'il y a un autre moyen que la fonction "range" qui permettrai de lire a cellule avec la protection.

merci d'avance
thierry
Configuration: Windows XP Internet Explorer 6.0

5 réponses

  1. Bonjour,

    en introduisant une variable :

    sub lirecellule

    dim valeurcellule as string

    valeurcellule = range("A1")
    range("C2") = valeur cellule

    end sub

    dans le code que j'ai mis ma variable valeur cellule est égale à la valeur qui est dans A1 et je mets cette valeur dans C2
    1. Bonjour,

      Voilà un exemple pour écrire dans une cellule d'une feuille protégée.

      Dim ws As Worksheet
      
      Set ws = ThisWorkbook.Worksheets(1)
      
      ws.Unprotect ("monPassword")
      
      ws.Range("B3").Value = "coucou"
      
      ws.Protect ("monPassword")


      A toi de voir si ça te convient et à l'adapter.

      ;o)
      1. re bonjours,

        désolé

        je me suis fait feinté...

        j'ai esseillé de faire comme tu m'a dit polux mais quesque j'ai mal fait?

        Dim compteur As Worksheet

        Set compteur = ThisWorkbook.Worksheets(1)

        compteur.Unprotect ("etn")

        compteur = Sheets("planning ETN utilités").ActiveSheet.Range("D2").Value

        compteur.Protect ("etn")
        1. re,

          cette ligne ne va pas :

          compteur = Sheets("planning ETN utilités").ActiveSheet.Range("D2").Value

          compteur est un objet Worksheet. Une cellule est un objet Range.

          Dans ton cas ça doit faire quelque chose comme ça:

          compteur.Range("D2") = Sheets("planning ETN utilités").Range("D2").Value

          La cellule D2 du premier onglet prend la valeur de la cellule D2 de l'onglet "planning ETN utilités".

          ;o)