Bouton sauvegarde Excel VBA [Résolu]

Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
- - Dernière réponse : cs_MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
- 11 janv. 2008 à 12:27
Bonjour,

J'ai un fichier excel en lecture seule.
J'ai créé un bouton "VB", qui permet de sauvegarder le fichier "sous...", en qqsorte, j'aimerais savoir comment, sur le clik du bouton, ouvrir la fenêtre "enregistrer sous...". Et j'aimerais aussi pouvoir récupérer, dans une variable, le chemin dans lequel le fichier a été sauvegarder.

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Afficher la suite 

Votre réponse

19 réponses

Meilleure réponse
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
16
3
Merci
Et ceci ?
 
   Dim NewFilename As String
   NewFilename = Application.GetSaveAsFilename(ActiveWorkbook.Name, "Fichiers Excel (*.xls),*.xls")
   ActiveWorkbook.SaveAs NewFilename

Ça prend toutefois quelques validations...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 89 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_MPi
Messages postés
4824
Date d'inscription
lundi 11 novembre 2002
Dernière intervention
15 novembre 2016
16
0
Merci
Salut,

Utilises pour cela le contrôle : ComonDialog

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Commenter la réponse de cs_Exploreur
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
hum...


j'aimerais éviter justement le comonDialog, car ça risque de faire des erreurs selon le poste de l'utilisateur, s'il na pa tous les controles sur sa machine...


N' y aurait-il pa possibilité de faire "comme si" l'utilisateur cliquait sur la "petite disquette" ? :-/

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
4824
Date d'inscription
lundi 11 novembre 2002
Dernière intervention
15 novembre 2016
16
0
Merci
Re,

Ben, fais toi ta propre UserForm alors.....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Commenter la réponse de cs_Exploreur
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
Pas possible de forcer un clik sur la "ptite diskette" ? :-/

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
le fichier excel "origine" étant en lecture seule, je pensais qu'en faisant un "thisWorkBook.Save" ça m'ouvrierais la boite "enregistrer sous..." mais "même pas", ça enregistre même si le fichier est en lecture seul... :-/ galèèère

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
588
Date d'inscription
jeudi 28 décembre 2006
Dernière intervention
29 avril 2010
2
0
Merci
Mais quel est le but de tout ca?

Pourquoi pas simplement faire un file save as ?

<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
Commenter la réponse de zen69
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
ok, et je fais "saveas" dans quel répertoire ? l'utilisateur doit pouvoir choisir le répertoire où il veut sauvegarder son fichier... you know ?

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
588
Date d'inscription
jeudi 28 décembre 2006
Dernière intervention
29 avril 2010
2
0
Merci
Mais lorsque tu fais saveas, le dialogue d'enregistrement s'affiche... donc l'utilisateur peut choisir son repertoire...

<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
Commenter la réponse de zen69
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
ah bon ??
Bah crotte, t'es sûr de toi ??
Attends je retente parcequ'il me semble qu'il faut mettre, derrière le "saveas", un chemin de sauvegarde... non ? :-/

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
En effectuant un "SaveAs", le fichier d'origine est écrasé, même s'il est en lecture seul, à aucun moment la fenêtre "enregistrer sous" ne s'affiche :-/ galèèèère (tjrs)

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
588
Date d'inscription
jeudi 28 décembre 2006
Dernière intervention
29 avril 2010
2
0
Merci
Si tu utilise vba oui mais si tu utilise les menu non ...

Le truc que je comprends pas c'est pourquoi tu ne veux pas que le user utilise le menu au lieu de patenter une macro qui fait quelque chose de built-in.

<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
Commenter la réponse de zen69
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
Bah wé, c'est clair qu'il faudrait juste que ce **!?@# d'utilisateur clique sur la disquette, mais "non"... je dois faire un bouton qui fait exactement la même action que la disquette. J'ai un fichier excel en lecture seule, l'user rempli des données dans ce fichier, et sauvegarde où il le désire. Voilà... j'ai toujours pas trouvé, alors que ça parait assez simple quand-même, mais bon... ya des choses simples que l'on ne peut pas faire, ça je le sais... je continue de chercher... je mettrais la réponse ici si je trouve... merci

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
588
Date d'inscription
jeudi 28 décembre 2006
Dernière intervention
29 avril 2010
2
0
Merci
    Dim SaveAs1 As FileDialog
    Dim vrtSelectedItem As Variant
    Dim SaveFile As String
    Set SaveAs1 = Application.FileDialog(msoFileDialogSaveAs)
    SaveAs1.AllowMultiSelect = False
    If SaveAs1.Show = -1 Then
        vrtSelectedItem = SaveAs1.SelectedItems(1)
        ActiveDocument.SaveAsEx vrtSelectedItem, visSaveAsWS
    End If


<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
Commenter la réponse de zen69
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
hum... ça me parait intéressant, sauf que... en testant....
"type non défini" sur le "as FileDialog".... :-/

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
Tu sais koi ? je vais pas me prendre la tête.....

Je vais faire un "Application.Quit"... le fichier étant en lecture seule, la boite "enregistrer sous" s'affiche automatiquement... donc ça convient à peu prèt à ce que je recherche, ok...

Merci pour votre aide c'est cool... bye

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
588
Date d'inscription
jeudi 28 décembre 2006
Dernière intervention
29 avril 2010
2
0
Merci
Sauf qu'en se faisant tu dois obligatoirement fermer le fichier... mais si ca correspond a ce que tu veux, pas de probleme.

<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
Commenter la réponse de zen69
Messages postés
222
Date d'inscription
mercredi 5 avril 2006
Dernière intervention
18 février 2011
3
0
Merci
Merci MPi, ça correspond mieux qu'un "Application.Quit"... en fait, la réponse vient de "GetSaveAsFilename"... c nickel, merci...

Cependant une autre petite question subsidiaire :) peut-on enregistrer ce fichier en lecture seule ?

''***************************************************************************
...à votre service
Thanks & Peace
Tonio
Commenter la réponse de antoine_ferard
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
16
0
Merci
Tu peux regarder du côté de SetAttr

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
Commenter la réponse de cs_MPi

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.