Bonjour,

J'ai crée un programme qui permet d'ouvrir une boite de dialogue "enregistrer sous" et automatisé le nom de fichier par défaut et le dossier par défaut.

Ca marche très bien sauf que je suis obligé de passer par un bouton pour l'appeler. J'aimerais bien pouvoir passer directement par la commande "enregistrer sous" d'Excel. Malheureusement j'y arrive pas. J'arrive à lui faire ouvrir la boîte de dialogue que je veux, mais après la boite de dialogue "classique" s'ouvre également ce qui est genant aussi.

Voici le bout de code que je met dans mon bouton:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
sub enregistrer
Dim objSaveBox As FileDialog
 
ChDir ThisWorkbook.Path
 
Set objSaveBox = Application.FileDialog(msoFileDialogSaveAs)
    With objSaveBox
        .InitialFileName = leNomdefichier (qui dépend de plusieurs cellules)
        .Show
        .Execute
    End With
 
End sub
Ce que j'ai testé c'est de remplacer la 1ère ligne par

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)