Créer une copie d'une seule page sans les modules et userform d'un fichier

Bonjour,

J'aimerai avoir une macro qui crée un nouveau fichier contenant une seule de mes pages et sans copier les macro de mon dossier parent.

Pour l'instant j'ai juste ça :

Sheets("Feuil1").Copy

Sauf que ça copier bien que une seule page mais ça ne sauvegarde pas le nouveau fichier et ça garde en memoire les macros de l'autre fichier.

Voici un fichier dans lequel j'ai deux feuilles ("Feuil1" et "Feuil2"), un userform et un module. Le bouton permet de lancer la macro pour faire la copie de la feuille.

13copiefeuil.xlsm (20.63 Ko)

Bonjour,

Voici un essai :

chemin = thisworkbook.path & "\nouveaufichier.xslx"
workbooks.add
thisworkbook.sheets("Feuil1").cells.copy activeworkbook.sheets(1).cells
activeworkbook.close true, chemin

Sinon, il est probablement possible de faire :

chemin = thisworkbook.path & "\nouveaufichier.xslx"
sheets("Feuil1").copy
activeworkbook.saveas chemin, xlOpenXMLWorkbook
activeworkbook.close false

Cdlt,

Bonjour,

Merci pour votre réponse.

La macro fait bien la copie de la page dans un nouveau fichier quelle enregistre mais garde en mémoire le vba. Cependant, le vba n'est pas réelle copier dans mon nouveau fichier. En fait il execute le vba présent sur le dossier parent (meme s'il est fermé).

Bonjour,

Ah oui, en effet, les boutons sont copiés. Pouvez-vous essayer ce code :

Sub test()

chemin = ThisWorkbook.Path & "\nouveaufichier.xslx"
Workbooks.Add
ThisWorkbook.Sheets("Feuil1").Cells.Copy
With ActiveWorkbook.Sheets(1).Cells
    .PasteSpecial Paste:=xlPasteFormulas
    .PasteSpecial Paste:=xlPasteFormats
End With

ActiveWorkbook.Close True, chemin

End Sub

Cdlt,

Nikel,

ça fonctionne merci.

Rechercher des sujets similaires à "creer copie seule page modules userform fichier"