copier une feuille et les macros qui sont associées ?

soif77

XLDnaute Nouveau
Bonjour tout le monde !

Je suis quelque peu perdu ! Quelqu'un pourrait-il m'aider ?!
Voilà le souci :

J'ai une feuille avec un petit tableau, j'ai plusieurs macros pour cette feuille :
une pour ajouter un objet dans le tableau et une pour trier le tableau.

Ce que je voudrais c'est cliquer sur un bouton qui copierait la feuille.

Alors bien sur j'arrive a copier cette feuille mais le petit probleme c'est que les macros sont enregistrées pour la 1ère feuille et donc ne fonctionne pas pour la 2ème !

Alors je ne sais pas si je suis clair mais j'espère que quelqu'un pourra m'aider !

Merci et bonne journée !
 

tora

XLDnaute Occasionnel
Re : copier une feuille et les macros qui sont associées ?

Bonjour tout le monde !

Je suis quelque peu perdu ! Quelqu'un pourrait-il m'aider ?!
Voilà le souci :

J'ai une feuille avec un petit tableau, j'ai plusieurs macros pour cette feuille :
une pour ajouter un objet dans le tableau et une pour trier le tableau.

Ce que je voudrais c'est cliquer sur un bouton qui copierait la feuille.

Alors bien sur j'arrive a copier cette feuille mais le petit probleme c'est que les macros sont enregistrées pour la 1ère feuille et donc ne fonctionne pas pour la 2ème !

Alors je ne sais pas si je suis clair mais j'espère que quelqu'un pourra m'aider !

Merci et bonne journée !

Slt,

Poste ton fichier, ça permettra d'y voir un peu plus clair ...

@+
 

mromain

XLDnaute Barbatruc
Re : copier une feuille et les macros qui sont associées ?

bonjour soif77,

lors d'un Sheet("LaFeuil").Copy, les macros sont bien copiées.
pour que le code s'adapte à la bonne feuille, il faut utiliser le "ActiveSheet".
je ne sais pas si j'ai été bien clair...
au pire, envoie-nous un bout de fichier avec ton PB

a+
 

gadget

XLDnaute Nouveau
Re : copier une feuille et les macros qui sont associées ?

salut,

un petit bout de code (que tu pourras transformer à ta sauce) qui te permet
de copier tout le code contenu dans un module vers une feuille (qui peut être dans un autre classeur):

Code:
Sub CopierMacroCarac()
'cette procédure permet de copier du code dans un autre classeur
'création d'une chaine de caractères qui contiendra le code à copier
Dim S As String
'récupération du code dans la variable créée ci-dessus
With Workbooks(NomFichierPrincipal).VBProject.VBComponents("ModuleCarac").CodeModule
S = .Lines(1, .CountOfLines)
End With
'copie du code dans la feuille active du classeur carac
With Workbooks(NomFichierCarac).VBProject.VBComponents("Feuil1").CodeModule
.AddFromString S
End With
End Sub

bon courage

@+

gadget
 

Discussions similaires

Statistiques des forums

Discussions
312 793
Messages
2 092 154
Membres
105 241
dernier inscrit
Mixlsm