Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

En vba temp=range("A1").value ne donne pas la valeur de A1 dans la feuille selectionnée..

1 réponse
Avatar
Michel Angelosanto
Boujour,
je selectionne une feuille et je donne a une variable la valeur d'une
cellule, hors je suis obligé de mettre temp=activesheet.range("A1").value
sinon j'ai la valeur de A1 d'une autre feuille.
Cela est-il normal ? Excel serait-il mal paramétré ?
--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr

1 réponse

Avatar
MichDenis
Bonjour Michel,

Lorsque tu écris du code dans le module d'une feuille particulière, les objets auxquels tu fais référence dans le code
du module de cette feuille sont réputés faire parti (être placé sur cette feuille) de cette feuille. En conséquence,
Range("A1") fait référence à la cellule A1 de la feuille du dit module. Cependant, si tu es dans le code module d'une
feuille, et que tu veilles faire référence à une cellule où un objet appartenant à une autre feuille, tu dois utiliser
la syntaxe longue ... c'est-à-dire Worksheets("NomDeLafeuille").range("A1") = "S" .... il en va de même pour tous les
objets situés à l'extérieur de cette feuille.

Lorsque ton code est écrit dans un module standard, l'objet est réputé appartenir à la feuille active.

La meilleure et la plus efficace syntaxe ...c'est celle-ci ... elle est toujours valide peu importe où tu saisis le
code.

With Worksheets("NomFeuille")
.range("A1") = 25
End with



Salutations!





"Michel Angelosanto" a écrit dans le message de news: 421b8c79$0$8150$
Boujour,
je selectionne une feuille et je donne a une variable la valeur d'une
cellule, hors je suis obligé de mettre temp¬tivesheet.range("A1").value
sinon j'ai la valeur de A1 d'une autre feuille.
Cela est-il normal ? Excel serait-il mal paramétré ?
--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr