Fenêtre "Enregistrer sous" AVEC type fichier "XLSM" prérempli

micapilote

XLDnaute Junior
Bonjour, je galère à finaliser ma macro afin qu'elle:
ouvre la fenêtre "enregistrer sous" OK
préremplisse le nom OK
préremplisse le chemin OK
sélectionne le format "XLSM" PAS OK

Code:
Sub Enregistrer()
Dim chemin, nom
nom = Sheets(1).Range("A1")
chemin = "G:\Nouvelle FS\Nouveau dossier\"
If ActiveWorkbook.Name = "Test1" Then
Application.Dialogs(xlDialogSaveAs).Show chemin & nom
Else: ActiveWorkbook.Save
End If
End Sub

mon pb est qu'il s'agit d'un fichier modèle à l'origine (.XLTM) et cela limite les choses, sinon j'aurais fait un enregistrement auto avec ce code mais le dossier d'origine d'un XLTM est c:/ !
nota: mon fichier se nomme Test.xltm donc une fois ouvert il s'appelle Test1.xltm

Code:
Sub Enregistrer()
Dim chemin, nom
nom = Sheets(1).Range("A1")
chemin = ThisWorkbook.Path & "\"
If ActiveWorkbook.Name = "Test1" Then
ActiveWorkbook.SaveAs Filename:= _
chemin & nom, FileFormat:=52, CreateBackup:=False
Else: ActiveWorkbook.Save
End If
End Sub

merci d'avance
 

Pièces jointes

  • Test.xlsm
    36.4 KB · Affichages: 114
  • Test.xlsm
    36.4 KB · Affichages: 115
  • Test.xlsm
    36.4 KB · Affichages: 120
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Fenêtre "Enregistrer sous" AVEC type fichier "XLSM" prérempli

Bonjour,

regarde peut être ceci, tiré de l'aide vba(2003)... à voir si compatible 2007
Code:
fileSaveName = Application.GetSaveAsFilename( _
    fileFilter:="monfiltre (*.xlsm), *.xlsm")
If fileSaveName <> False Then
    MsgBox "Save as " & fileSaveName
End If

bonne soirée
@+
 

Pierrot93

XLDnaute Barbatruc
Re : Fenêtre "Enregistrer sous" AVEC type fichier "XLSM" prérempli

Re,
aucun fichier enregistré, c'est embêtant !
Ca c'est sûr....

tu as bien remplacé le "msgbox" par un "saveas" :
Code:
Sub test()
fileSaveName = Application.GetSaveAsFilename( _
     fileFilter:="monfiltre (*.xlsm), *.xlsm")
 If fileSaveName <> False Then
     ActiveWorkbook.SaveAs fileSaveName , xlOpenXMLWorkbookMacroEnabled
 End If
End Sub

bonne soirée
@+

Edition : rajouté le format...
 
Dernière édition:

micapilote

XLDnaute Junior
Re : Fenêtre "Enregistrer sous" AVEC type fichier "XLSM" prérempli

re, oups mais non quand meme, en modifiant, le fichier ne veut pas se sauvegarder, l'extension XLSM n'est pas reconnu et ça me demande si je veux supprimer les macros de mon projet.
je crois que je vais finir par enregistrer dans un dossier plus haut que mon dossier voulu (les autres changent) et ça ira bien .
 

micapilote

XLDnaute Junior
Re : Fenêtre "Enregistrer sous" AVEC type fichier "XLSM" prérempli

Finalement je m'en suis (presque) sorti, mon code est bon mais mon ELSE à la fin m'affiche à nouveau la fenêtre enregistrer sous alors que ma condition est rempli (titre n'est pas 2012 ...) alors que je voudrais un enregistrement simple.
je pense que cela vient du "Application.GetSaveAsFilename" que je ne maitrise pas.

Code:
Sub Enregistrer()
'
Dim chemin, nom
nom = Sheets(2).Range("B4").Text
chemin = "C:\"
fileSaveName = Application.GetSaveAsFilename(chemin & nom, FileFilter:="Fiche suiveuse (*.xlsm), *.xlsm")
If ActiveWorkbook.Name = "2012 blabla" Then
    If fileSaveName <> False Then
     ActiveWorkbook.SaveAs fileSaveName, xlOpenXMLWorkbookMacroEnabled
MsgBox "Fiche suiveuse " & nom & " enregistree dans le dossier " & chemin, vbInformation, "Enregistrement reussi"
    End If
Else
ActiveWorkbook.Save
End If
End Sub

Edit, j'ai trouvé la boulette, le fileSaveName n'était pas à la bonne place

Code:
Sub Enregistrer()
'
Dim chemin, nom
nom = Sheets(2).Range("B4").Text
chemin = "C:\"
If ActiveWorkbook.Name = "2012 blabla" Then
fileSaveName = Application.GetSaveAsFilename(chemin & nom, FileFilter:="Fiche suiveuse (*.xlsm), *.xlsm")
    If fileSaveName <> False Then
     ActiveWorkbook.SaveAs fileSaveName, xlOpenXMLWorkbookMacroEnabled
MsgBox "Fiche suiveuse " & nom & " enregistree dans le dossier " & chemin, vbInformation, "Enregistrement reussi"
    End If
Else
ActiveWorkbook.Save
End If
End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 145
Messages
2 085 762
Membres
102 966
dernier inscrit
InitialPP