Problème dans une macro : sélection de fichier et de feuille

Bonjour à tous,

je commence tout juste à me plonger dans l'utilisation d'excel (oui, ma version n'est pas des plus récente mais suffisante )

Voici mon problème :

j'ai une feuille principale, baptisée "collecte_donnees.xls", et mon objectif est de récupérer des données prises dans d'autres fichiers excel. En particulier, l'un de ces fichiers s'appelle "source_donnees.xls"

J'ai crée des macros, qui se lancent depuis la page "Feuil1" de "collecte_donnee.xls". Via

Workbooks("source_donnees").xls.activate (cette formule est fausse, je ne me souviens plus exactement de celle utilisée, je suis sur un autre pc

J'utilise également

Sheets("FeuilX").activate pour passer d'une feuille à l'autre et collecter les données (ici sur la feuilleX) (je ferais d'ailleurs peut etre mieux d'utiliser .Select plutôt que .Activate...)

Voici ma difficulté :

je passe régulièrement d'un fichier à l'autre.

Je prépare les données sur "collecte_donnees", puis je bascule sur "source_donnees" pour faire les recherches qui m'intéressent et enfin je retourne sur "collecte_donnees" pour les afficher à l'écran.

Le problème est que le fichier "collecte_donnees" est amené à être renommé en fonction du type de recherche que j'y fais. De même, le nombre de feuilles varie, et elles changent de nom.

En faisant "enregistrer sous", je change le nom de "collecte_donnees" vers "collecte_noms" par exemple. Le souci est que ma macro ignore ce changement, puisque j'utilise Workbooks("collecte_donnees.xls").activate pour sélection le classeur et Sheets("Feuil1").activate pour passer sur la bonne feuille.

Comment puis-je faire pour que ma macro reste générique ?

J'aimerais que ma macro s'adapte au nouveau nom de fichier à l'enregistrement, et donc que ma macro marche dans tous les cas.

De même, il faudrait que je puisse renommer les feuilles (par exemple de Feuil1 vers Noms_Famille) et que ca n'affecte pas le fonctionnement de ma macro.

Ainsi, il faudrait que ma macro utilise le nom du fichier, mais sans l'écrire. Il me faudrait aussi utiliser la position des feuilles, mais sans les nommer.

Comment puis-je faire celà ?

J'ai parcouru le forum sans succès, et l'aide d'Excel (97 s'il vous plait) est des plus obscures...

D'avance merci pour votre aide !

Cyrille

Je réponds moi même à ma question :d

J'ai stocké données activesheet (feuille active) et activeworkbook (classeur actif) dès le lancement de ma macro pour garder en mémoire ces infos sans que je n'ai besoin d'utiliser le nom explicite de mes documents.

Voilà pour la réponse !

Merci à ceux qui m'ont lu

A bientot

Cyrille

Rechercher des sujets similaires à "probleme macro selection fichier feuille"