Perte du nom de cellule entre deux feuilles

olggapt

XLDnaute Junior
Bonjour à tous

Je place une cellule sur une feuille différente. Je nomme chacune de ces cellules ("Cellule1" et "cellule2")

Or, la méthode Range échoue quand j'appelle la cellule qui se situe sur la feuille d'à côté.
je croyais que le nom d'une cellule était reconnaissable par le code sur tout le classeur
Comment faire pour que la méthode Range n'échoue pas quelque soit l'endroit d'où j'appelle une cellule ?

je vous soumets le petit ci-joint

merci et à bientôt !
 

Pièces jointes

  • testNomCellule.xls
    31 KB · Affichages: 36

Papou-net

XLDnaute Barbatruc
Re : Perte du nom de cellule entre deux feuilles

Bonjour olggapt,

Ta méthode échoue car tu tentes de sélectionner une cellule sur une autre feuille que celle active. Excel ne le permet pas, il faut d'abord sélectionner la feuille, puis la cellule.

Par contre, tu n'as nul besoin de sélectionner une cellule pour l'exploiter. Ainsi, si tu modifies ton code comme ci-dessous, tu auras bien le résultat recherché :

Code:
Sub test()
x = Range("Cellule1").Value
MsgBox x

y = Range("Cellule2").Value
MsgBox y
End Sub
Espérant avoir répondu.

Cordialement.
 

olggapt

XLDnaute Junior
Re : Perte du nom de cellule entre deux feuilles

Merci de cette réponse. J'ai compris la nuance !

Je me permets de te soumettre l'énigme suivante :
Dans le fichier joint, j'exécute une macro à la fermeture du fichier
Or, le code me renvoie une erreur n°9 alors que la macro marche très bien quand elle est lancée seule
une idée ?
merci !
 

Pièces jointes

  • Classeur1.xls
    30.5 KB · Affichages: 28
  • Classeur1.xls
    30.5 KB · Affichages: 37
  • Classeur1.xls
    30.5 KB · Affichages: 37

Papou-net

XLDnaute Barbatruc
Re : Perte du nom de cellule entre deux feuilles

Bonsoir olggapt,

Cette erreur est dûe au fait que tu tentes d'activer le classeur qui vient d'être ouvert, alors qu'il se trouve automatiquement activé à la fermeture du fichier.

Quand ta macro est lancée seule, le fichier en cours reste ouvert et tu peux donc activer le nouveau sans problème.

Il te suffit donc supprimer la ligne :
Code:
Windows("System.xls").Activate
et ta macro ne devrait plus planter.

Cordialement.
 

olggapt

XLDnaute Junior
Re : Perte du nom de cellule entre deux feuilles

Ooops ! en effet !!! merci beaucoup !

Autre souci, si je peux me permettre...

J'utilise la fonction "Application.DisplayFullScreen = True" pour imposer le plein écran
Comment faire pour ne pas annuler cette fonction en tapant sur Esc ?
Je te remercie !
 

Papou-net

XLDnaute Barbatruc
Re : Perte du nom de cellule entre deux feuilles

Ooops ! en effet !!! merci beaucoup !

Autre souci, si je peux me permettre...

J'utilise la fonction "Application.DisplayFullScreen = True" pour imposer le plein écran
Comment faire pour ne pas annuler cette fonction en tapant sur Esc ?
Je te remercie !

Bonsoir,

Je ne vois pas comment inhiber cette fonction. La seule technique que je puisse te proposer est de repasser automatiquement en plein écran lors de changement de cellule active :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.DisplayFullScreen = True
End Sub

C'est un pis-aller mais c'est tout ce que je suis en mesure de te proposer.

Cordialement.
 

eriiic

XLDnaute Barbatruc
Re : Perte du nom de cellule entre deux feuilles

Bonsoir tout le monde,
Comment faire pour ne pas annuler cette fonction en tapant sur Esc ?

Tu peux détourner l'utilisation de la touche.
Mais il ne faudrait pas que ça manque à l'utilisateur.
Déjà imposer le plein écran je trouve ça limite, moi ça m'énerverait. Je suis suffisamment adulte pour savoir quel choix me convient...
Code:
Sub activationESCkey()
    Application.OnKey "{ESC}", "pleinEcran"
End Sub

Sub pleinEcran()
    MsgBox ("plein écran")
End Sub

eric
 

Discussions similaires

Statistiques des forums

Discussions
312 595
Messages
2 090 093
Membres
104 374
dernier inscrit
cheick.coulibaly@dcsmali.