Copie de feuille avec macro

Bonjour

J'ai un classeur nommé "TRAME RECHERCHE" avec un onglet "Recherche" qui détient une macro "RESET" pour effacer les données de certaines cellules dont voici le code (qui fonctionne parfaitement) :

Sub RESET()

Dim ficprod As Workbook

Set ficprod = ActiveWorkbook

Dim rech As Worksheet

Set rech = ficprod.Worksheets("Recherche")

Application.DisplayAlerts = False

rech.Select

Range("C4,E4,G4,I4").Select

Selection.ClearContents

Range("C4").Select

Application.DisplayAlerts = True

End Sub

Par la suite, je souhaite copier cet onglet sur un nouveau classeur que j'enregistre sous le nom "RECHERCHE 2019"

voici le code :

Sub EXPORT_BD()

Dim rech

rech = "Recherche"

Dim fic_0 As Workbook

Set fic_0 = ThisWorkbook

fic_0.Activate

Sheets(rech).Copy

ActiveWorkbook.SaveAs filename:="C:\Documents\RECHERCHE 2019.xlsm", _

FileFormat:= _

xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False, local:=True

End Sub

La copie s'effectue bien lorsque je lance la macro "RESET" sur le fichier "RECHERCHE 2019", celle-ci s'effectue sur le fichier d'origine "TRAME RECHERCHE"

Comment puis-je procéder pour avoir la macro "RESET" qui s'effectue sur le fichier "RECHERCHE 2019" ?

Merci par avance

Bonsoir Ludush, bonsoir le forum,

Peut-être en remplaçant :

Set ficprod = ActiveWorkbook

par :

Set ficprod = ThisWorkbook

Bonjour ThauTheme,

Tout d'abord merci pour ta réponse.

Je viens de faire l'essai avec "ficprod = ThisWorkbook" mais ça ne fonctionne toujours pas : il ouvre le fichier d'origine "TRAME RECHERCHE" puis affichage une message d'erreur "400"

Par contre avec "ficprod = ActiveWorkbook", il ouvre le fichier d'origine "TRAME RECHERCHE" mais la macro "RESET" s'effectue bien sur le fichier "RECHERCHE 2019". Seulement, je souhaiterais que le fichier "TRAME RECHERCHE" ne s'ouvre pas

Il y a t-il une autre solution ?

Merci par avance

Rechercher des sujets similaires à "copie feuille macro"