Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Enregistrer ficher en format macro via VBA

Mjgreg67

XLDnaute Junior
Bonjour tout le monde

Je n'arrive pas a enregistrer mon fichier de telle sorte à ce que extension soit ".xlsm" (prenant en charge le macro)

Voici mon code :

Sub sauvegarder()
Dim extension As String
Dim chemin As String,
Dim nomfichier As String

extension = ".xlsx"
chemin = "C:\Users\Greg\Documents\"
nomfichier = ActiveSheet.Range("A6") & extension

With ActiveWorkbook

.SaveAs Filename:=chemin & nomfichier

End With

End Sub

Je pensais qu'il suffisait de mettre .xlsm pour que celui ci l'enregistre sous forme de fichier excel macro mais ce n'est pas le cas :s

Pourriez vous m'aider s'il vous plait ? Je vous en serai très reconnaissant

Merci d'avance !
 
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : Enregistrer ficher en format macro via VBA

Bonjour Mjgreg,

Voilà typiquement une question à laquelle l'enregistreur de macro répond facilement
tu enregistres une macro, tu sauvegardes un classeur en xlsm, puis tu regardes le code généré

chez moi ça donne un truc comme ça :

Code:
    ActiveWorkbook.SaveAs Filename:= _
        "C:\truc\Classeur2.xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
 

Mjgreg67

XLDnaute Junior
Re : Enregistrer ficher en format macro via VBA

Bonjour tototiti2008,

merci pour ta réponse ! Comment puis_je l'intégrer dans mon code ? :s
Car selon le tien, le classeur sera enregistrer au nom de "Classeur2". Néanmoins je souhaiterai qu'il enregistre en fonction du nom donné en cellule A6. D'ou le code : ActiveSheet.Range("A6")

Néanmoins ta remarque est forte intéressante : je ne pense jamais à utiliser l'enregistreur macro ! Merci pour ce conseil ^^

As tu une idée pour intégrer ton code dans le mien ?
 

tototiti2008

XLDnaute Barbatruc
Re : Enregistrer ficher en format macro via VBA

Re,

Oui, il suffit d'adapter le tien :

Code:
Sub sauvegarder()
    Dim extension As String
    Dim chemin As String, 
    Dim nomfichier As String
   
    extension = ".xlsm"
    chemin = "C:\Users\Greg\Documents\"
    nomfichier = ActiveSheet.Range("A6") & extension

    With ActiveWorkbook
      
        .SaveAs Filename:=chemin & nomfichier, FileFormat:= xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
     
    End With
    
    End Sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…