Enregistrer sous. MACRO VBA

GuillaumA

XLDnaute Occasionnel
Bonjour à tous,
Comme conseillé, j'ouvre mon propre fil sur la question suivante:

J'ai une macro d'enregistrement de fichier:
Sub Enregistrer()

AdrEnregistr = Application.GetSaveAsFilename(InitialFileName:=Environ("HOMEDRIVE") & Environ("HOMEPATH") & "\" & Range("I216").Value & Range("J216").Value, Filefilter:="Fichier Excel (*.xls), *.xls")

ActiveWorkbook.SaveAs AdrEnregistr

End Sub


Cependant j'ai deux problèmes:
- Même si je clique sur Annuler l'enregistrement, il enregistre quand même
- La macro ne cible pas le bureau mais le profil utilisateur (C://Documents and Settings/userprofile.
Une idée de quoi changer pour s'accorder à ces deux derniers points?


De manière optionnelle, j'aimerai que seulement la feuille dans laquelle se situe la macro s'enregistre. Est-ce possible?

Merci pour votre aide

Cordialement,
Guillaume A.
 

skoobi

XLDnaute Barbatruc
Re : Enregistrer sous. MACRO VBA

Bonjour GuillaumA,

parfois l'aide est très utile. C'est le cas ici.
GetSaveAsFilename, méthode
.....
.........
....
Notes


Cette méthode renvoie le nom du fichier sélectionné ou le nom tapé par l'utilisateur. Le nom renvoyé est susceptible d'inclure une spécification de chemin d'accès. Renvoie la valeur False si l'utilisateur annule la boîte de dialogue.
Cette méthode est susceptible de modifier le lecteur ou le dossier en cours.
Exemple

Cet exemple montre comment afficher la boîte de dialogue Enregistrer sous, dont le filtre de fichier est défini en fichiers texte. Si l'utilisateur choisit un nom de fichier, ce nom de fichier est affiché dans un message.
fileSaveName = Application.GetSaveAsFilename( _
fileFilter:="Text Files (*.txt), *.txt")
If fileSaveName <> False Then
MsgBox "Save as " & fileSaveName
End If
 

Statistiques des forums

Discussions
312 496
Messages
2 088 982
Membres
103 997
dernier inscrit
SET2A