Lire une cellule excel avec virtual basic

thierry78 -  
Polux31 Messages postés 7219 Statut Membre -
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
A voir également:

5 réponses

melanie1324
 
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
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
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)
0
thierry78
 
merci beaucoup a vous deux!!!
0
thierry78
 
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")
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Polux31 Messages postés 7219 Statut Membre 1 204
 
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)
0