XL 2013 Procédure pour enregistrer sous avec intégration date et heure

massol

XLDnaute Junior
Bonjour,

En fin de procédure je fais appel à la procédure ci-dessous pour enregistrer un backup du fichier.
Je propose d'enregistrer le fichier proposé sur le bureau et je clique sur le bouton "enregistrer" sauf que le fichier n'est pas enregistré ??

Des suggestions ?

Code:
Sub SaveFile()
  Dim Filename As String
  If MsgBox("Do you want to save TEST on your local disk ?", vbQuestion + vbYesNo, "Confirmation Request") = vbYes Then
    Filename = "TEST_" & Format(Date, "yyyymmdd") & "_" & Format(Time, "hhmmss") & ".xlsm"
    With Application.FileDialog(msoFileDialogSaveAs)
      .Title = "Save File as"
      .InitialFileName = Filename
      .Show
    End With
  End If
End Sub
 

job75

XLDnaute Barbatruc
Bonjour massol,
Code:
Sub SaveFile()
If MsgBox("Do you want to save TEST on your local disk ?", 4, "Confirmation Request") = 7 Then Exit Sub
With Application.FileDialog(msoFileDialogSaveAs)
    .Title = "Save Copy As"
    .InitialFileName = "TEST_" & Format(Now, "yyyymmdd_hhmmss")
    If .Show Then ThisWorkbook.SaveCopyAs Left(.SelectedItems(1), InStrRev(.SelectedItems(1), ".")) & "xlsm"
End With
End Sub
A+
 
Dernière édition:

job75

XLDnaute Barbatruc
Re,

Avec la méthode précédente le fichier est toujours enregistré en .xlsm quel que soit le type de fichier spécifié par l'utilisateur.

Il est quand même mieux d'indiquer ce type à l'ouverture de la boîte de dialogue :
Code:
Sub SaveFile()
If MsgBox("Do you want to save TEST on your local disk ?", 4, "Confirmation Request") = 7 Then Exit Sub
With Application.FileDialog(msoFileDialogSaveAs)
    .Title = "Save Copy As"
    .InitialFileName = "TEST_" & Format(Now, "yyyymmdd_hhmmss")
    .FilterIndex = 2 'classeur prenant en charge les macros (pas indispensable mais c'est mieux)
    If .Show Then ThisWorkbook.SaveCopyAs Left(.SelectedItems(1), InStrRev(.SelectedItems(1), ".") ) & "xlsm"
End With
End Sub
A+
 

Discussions similaires

Statistiques des forums

Discussions
311 711
Messages
2 081 799
Membres
101 818
dernier inscrit
tiftouf5757