J'ai un problème de macro avec l'enregistrement excel. Je vous explique ce qui ne marche pas:
J'ai un tableau avec des tas d'informations. Je souhaite créer en automatique une nouvelle feuille, et y copier certaines cellules.
Par exemple, mon tableau d'origine se nomme Feuil1. Lorsque la macro insère une nouvelle feuille, celle-ci est nommée Feuil2.
Si je souhaite exécuter la macro une seconde fois pour un nouveau tableau, c'est la feuille 2 qui sera écrasée car c'est le numéro de feuille qui fait référence lorsque la macro a été crée. La nouvelle page crée reste donc vierge
Est-ce possible de faire la chose suivante:
-Que la macro prenne comme page source la feuille active (qui peut être la feuille 1, 2 ou autre)et qu'elle la garde en mémoire pour revenir copier les cellules
-Que lorsque la macro insère une nouvelle feuille qu'elle prenne en mémoire le nom de la nouvelle feuille (qui peut être la 5, 6 ou 7ème feuille insérée)
Voilà, j'espère avoir été clair dans mes explications
pourtant la première chose que la macro fait c'est de créer la feuille projet et il traite le reste après.
comment je peux faire pour qu'il insère le bouton à la fin?
Quand j'ai ouvert ton classeur je suis allé sur la feuille données et j'ai lancé la macro "recopie des données". A ce moment là dans ton classeur la feuille "Projet n'existait pas. Il faut d'abord lancer Ajout du tableau et ensuite la recopie des données et là ça marche.
Par contre une erreur survient à cause de cette ligne qui a priori ne sert à rien.
j'ai suprimé les lignes dont tu parles, j'ai fait autrement.
par contre, le message d'erreur vient que depuis que j'essaye d'insérer un bouton de commande.
je viens de refaire l'essai et il reste bloqué à l'ajout du texte dans le module et il reste encore bloqué sur la ligne
"With ThisWorkbook.VBProject.VBComponents(ActiveSheet.Name).CodeModule"
si je programme tout sauf l'ajout du code, aucun message d'erreur apparait
je pense que l'erreur vient du fait que la page active n'est pas "FeuilDest". J'ai essayé de supprimer "Set FeuilSource = ActiveSheet" et renommé la feuille en "projet" à la fin de la macro. Sans ces 2 modifs j'ai une erreur
Avec cette modif il ne met plus de message d'erreur mais il met le code dans la mauvaise feuille.
Quand il crée une nouvelle appelée Feuil4, le code est inséré dans Feuil1, quand il crée la Feuil5, il met dans Feuil2 etc...
Je ne comprend pas pourquoi c'est pas inséré dans Activesheet