Pourquoi la copie ne marche pas?

  • Initiateur de la discussion Initiateur de la discussion Baside
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

Baside

Guest
Bonjour le Forum,
Pourquoi ce code:

Sub Macro1()
Annee = Worksheets('Feuil1').Range('A1').Value
MsgBox Annee
Macro2
Sheets(Annee).Select
End Sub

Marche trés bien dans un fichier (module 1) et ne marche pas si je le colle dans un module1 dans un autre fichier ?

D'avance, Merci, Hervé.
 
bonjour baside,

as tu pense a renomer tes feuilles du nouveau classeur? Puisque tu as une feuille nommée 'Année' si tu renommes pas ta feuille du nouveau classeur en 'Année' ta macro affichera une erreur.

J espere t avoir aidé.
 
Bonjour mike, Pascal76, le Forum,

La variable est Annee
J'ai bien mis 2001 pour l'éssai dans la cellule A1 de la feuille1,
j'ai bien nommé une feuille 2001 et 2001 apparait dans MsgBox,
c'est la ligne suivante qui se surligne en jaune et là comprend pas car celà marche très bien dans un autre fichier.

Merci pour vos réponses, hervé.
 
Bonjour le fil, Bastide,

Une idée... Vu que tu n'as pas déclaré tes variables, Il y a peut être un problème de format de cellules text/ nombre en A1.

essaie de déclarer dim Annee as string et regarde si ça change Qchose...?

A +

EDITION

Ou essaie sinon de prendre le texte de A1 et pas la Value ( Range('A1').text

A+

Message édité par: luki, à: 18/04/2005 12:47
 
Re le fil,

Après essai, le fait que la feuille s'apelle '2001' peut efffectivement poser problème car l'objet sheets demande soit un indice soit un nom de feuille en STRING.

Ill faut donc bien passer le nom en string par une des 2 méthodes ci-dessus. Chez moi , c'est ok.

A +
 
Bonjour Luki, le Forum,

Oui, j'ai bien pensé au format qui est en standard, mais suite à ton message, j'ai mis text et çà marche.
Donc grand mercipour la résolution de cette énigme.

pour la déclaration de la variable, quand j'ai mis String, c'est bon (Variant aussi)

Bonne journée, Hervé.
 
Hervé,

Ca peut aussi marcher avec variant mais hormis le fait que ça utilise plus de mémoire c'est moins propre , si tu as besoin d'une variable string, déclare la en string, tu auras moins de surprises!

De plus insérer en début de module ' Option Explicit' t'oblige à déclarer les variables , c'est très utile et facilite le déboguage.

A +
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
251
Réponses
9
Affichages
379
Réponses
43
Affichages
697
Retour