Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/01/2012, 18h30   #1
Invité de passage
 
Homme
Étudiant
Inscription : janvier 2012
Messages : 1
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie

Informations forums :
Inscription : janvier 2012
Messages : 1
Points : 0
Points : 0
Par défaut VBA, problème sauvegarde

Bonjour,

Je suis sur un petit projet VBA et j'utilise à un moment le SaveAs. Quand je teste, ça marche : je peux choisir l'emplacement, le fichier prend tout seul le bon format, mais si par malheur j'appuie sur annuler, le fichier s'enregistre quand même automatiquement sous le nom "FAUX".

Savez vous d'où vient cette bizarerie?

voici le code :


Code :
1
2
3
4
5
6
Dim fname As String
 
fname = Application.GetSaveAsFilename
fname = fname & ".xlsm"
 
ActiveWorkbook.SaveAs Filename:=fname, FileFormat:=xlOpenXMLWorkbookMacroEnabled

merci !
pehaut est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 19h08   #2
Membre du Club
 
Consultant KPI
Inscription : août 2010
Messages : 23
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Consultant KPI

Informations forums :
Inscription : août 2010
Messages : 23
Points : 43
Points : 43
Bonjour,

fname contient la valeur retournée par GetSaveAsFilename.
Si l'utilisateur ne choisit aucun nom, la fonction renvoie Faux.

Adapte simplement ton code pour ne pas sauver si l'utilisateur choisir d'annuler la sauvegarde

Code :
1
2
3
4
5
6
7
8
 
Dim fname As String
 
fname = Application.GetSaveAsFilename
If fname <> False Then
    fname = fname & ".xlsm"
    ActiveWorkbook.SaveAs Filename:=fname, FileFormat:=xlOpenXMLWorkbookMacroEnabled
End If
DeTraX est déconnecté   Envoyer un message privé Réponse avec citation 20
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h29.


 
 
 
 
Partenaires

Hébergement Web