Macro Enregistrer sous

slaurent01

XLDnaute Junior
Bonjour le forum,


J'ai créé une macro pour enregistrer sous. Le problème est que lorsque je clique sur annuler, un fichier false est automatiquement crée.

Je n'arrive pas à insérer le code nécessaire afin que si l on clique sur annuler la macro s'arrête et n'enregistre pas le fichier.

Code:
Sub EnregistrerSous()

    Dim NomFichier As String, x As String, w As String, y As String, NomDefaut As String
    
    'Définition des variables qui vont composer le nom du fichier
    w = ThisWorkbook.Worksheets("Devis").Range("c1")
    x = "-" & ThisWorkbook.Worksheets("Devis").Range("c2")
    y = "-" & Format(Date, "dd mm yyyy")
    
    'Création du nom du fichier
    NomDefaut = w & x & y
    
    'Ouverture de Enregistrer sous
    NomFichier = Application.GetSaveAsFilename(NomDefaut, "Microsoft Excel (*.xlsm), *.xlsm")
    'Sauvegarde
    'If NomFichier <> False Then
    ActiveWorkbook.SaveAs Filename:=NomFichier
    'Else
    'Exit Sub
   'End If
End Sub



Merci pour votre aide

Cordialement
Stéphane
 

Pièces jointes

  • test.xlsm
    16.7 KB · Affichages: 45
  • test.xlsm
    16.7 KB · Affichages: 46
  • test.xlsm
    16.7 KB · Affichages: 45

Papou-net

XLDnaute Barbatruc
Re : Macro Enregistrer sous

Bonjour Stéphane,

Peut-être tout simplement comme ceci :

Code:
Sub EnregistrerSous()

    Dim NomFichier As String, x As String, w As String, y As String, NomDefaut As String
    
    'Définition des variables qui vont composer le nom du fichier
    w = ThisWorkbook.Worksheets("Devis").Range("c1")
    x = "-" & ThisWorkbook.Worksheets("Devis").Range("c2")
    y = "-" & Format(Date, "dd mm yyyy")
    
    'Création du nom du fichier
    NomDefaut = w & x & y
    
    'Ouverture de Enregistrer sous
      If Application.Dialogs(xlDialogSaveAs).Show = False Then Exit Sub
End Sub
Cordialement.
 

Discussions similaires

Réponses
14
Affichages
437
Compte Supprimé 979
C
Réponses
3
Affichages
283

Statistiques des forums

Discussions
312 448
Messages
2 088 499
Membres
103 871
dernier inscrit
julienleburton