[VBA] Enregistrer dans un nouveau fichier

Résolu/Fermé
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 - 28 mai 2008 à 11:46
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 - 29 mai 2008 à 10:09
Bonjour,

Je viens de finir toutes mes partie bien programmées de ma macro et j'aimerai dans cette macro, à la suite des autres parties ajouter une partie donc programmée en VBA qui sauvegarde le fichiier dans un nouveau fichier sans enregistrer le fichier déja ouvert sur lequel je travail.

En espérant avoir été assez clair, merci de m'aider

Si je n'ai pas été assez clair n'hésitez pas à me le dire merci
A voir également:

17 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
28 mai 2008 à 11:49
bonjour,

Il faut utiliser SaveAs en donnant le chemin et nom du nouveau fichier :
ThisWorkbook.SaveAs Filename:=Chemin & nomfichier & ".xls", FileFormat:=xlNormal _
            , Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
            CreateBackup:=False


bon courage

;o)

polux
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
28 mai 2008 à 12:14
Merci merci mais j'ai un soucis :)
Quand j'effectue l'opération ma fenêtre se renomme en le nouveau nom alors que je l'a veux intact...
Ce n'est pas un soucis si je sauvegarde pas seulement la macro elle est attribuée au nouveau fichier après donc ca me fait tout rater quoi ...

En clair je tavaille sur un feuille Excel avec une macro qui automatise toute une procédure et je dois sauvegarder arrivé à la moitié dans un fichier à part mais je dois aussi sauvegarder dans encore un autre fichier à part à la fin, gardant mon fichier ouvert intact que je quite sans sauvegarder...

Ne faut - il pas placer la macro quelque part dans le PC pour pour qu'elle ne s'affecte pas qu'au nouveau fichier mais qu'ellle reste aussi au fichier d'origine et enfin s'il y a quelque chose à changer à ta méthode je t'en pris je suis toujours preneur :)
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
28 mai 2008 à 12:37
il faut réactiver ton fichier d'origine ...
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
28 mai 2008 à 12:43
c'est à dire?
Comment faire?
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
28 mai 2008 à 13:07
J'y connais rien...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
28 mai 2008 à 13:08
après la sauvegarde faire :

Application.Workbooks.Open ("chemin_et_nom_du_fichier_d_origine")
ThisWorkbook.Close


;o)

polux
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
28 mai 2008 à 14:45
ou jdois mettre la macro pour pa qu'elle ne soit affectée qu'à 1 fichier?
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
28 mai 2008 à 14:57
Tu dois avoir la réponse ici : https://excel.developpez.com/faq/

En fait, il faut supprimer la macro dans le fichier qui vient d'être créé. Il y a des explications dans le lien.

;o)

polux
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
28 mai 2008 à 15:33
C'est pas une histoire de suprimer :) apparemment il faut l'enregistre comme macro complémentaire mais je sais pas comment faire -_-*
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
28 mai 2008 à 15:37
je ne sais pas faire, dsl
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
28 mai 2008 à 16:39
Vais me débrouiller je t'expliquerai j'ai déja rajouté la Macro complémentaire maintenant reste à la faire rester :D
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
28 mai 2008 à 16:45
Ok,

Bon courage ... tiens nous au courant

;o)

polux
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
29 mai 2008 à 09:12
En fait j'ai retesté ce que tu m'a donné j'avai pas bien testé et en fait le fichier à part ne reçoit QUE la macro sinon il esst vide
en fait quand je lui dis de sauvegarder dans un fichier (...) il sauvegarde la macro dans le fichier (...) et non seulement il n'y a rien d'autre que la macro sur le nouveau fichier
mais en plus la macro n'est plus sur le fichier d'origine empéchant donc ainsi la suite des opérations :S aide moi s'il te plait


PS: Quand le monsieur compétant viendra me voir je te dirais comment faire pour l'histoire des macros complémentaires...
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
29 mai 2008 à 09:20
voila le code qui sauvegarde et envoi :

ThisWorkbook.SaveAs Filename:="C:\Documents and Settings\inford\Mes documents\" & "FeuillesRecapitulatives" & ".xls", FileFormat:=xlNormal _
, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
Application.Workbooks.Open ("C:\Documents and Settings\inford\Mes documents\Inter Macro.xls")
ThisWorkbook.Close
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
29 mai 2008 à 09:21
rien d'autre ne touche à la manipulation de la macro ou du fichier, seulement de son contenu
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
29 mai 2008 à 09:51
ActiveWorkbook.SaveAs Filename:= _
"C:\Documents and Settings\inford\Mes documents\FeuillesRecapitulatives.xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

Voila ceci déja permet d'enregistrer correctement
Grace aux macro complémentaires ma macro reste en place ^^




Pour ce qui est de la macro complémentaire:

1 - Tout d'abord tu ouvres un nouveau document Excel
2 - Tu tapes ta macro
3 - Tu fermes la page VB Studio et tu te retrouves sur ton classeur
4 - Enregistrer sous ton nom de macro format .xla
5 - Tu récupère le fichier sous format Macro Complémentaire et tu le places dans:
C:\Documents and Settings\tonprofil\Application Data\Microsoft\AddIns ou C:\Documents and Settings\tonprofil\Application Data\Microsoft\Macros complémentaires cela dépend du profil.
6 - une fois enregistré, ouvre un nouveau fichier Excel: Fais Outil=>Macro Complémentaires
7 - tu arrives sur une fenêtre, fais Parcourir cherche et sélectionne ta macro
8 - une fois sélectionnée coche la quand elle apparaît dans la liste (Cela la mettra à disposition à chaque document Excel)
9 - Crée un bouton personnalisé dans ta barre d'outils
10 - Attribue lui la macro juste en tapant le nom de la macro.

Et voila ta macro sera à disposition dans chaque document et ne sera pas attribué à un seul classeur. Tu n'as qu'à cliquer sur le bouton pour la lancer...
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
29 mai 2008 à 09:57
ok, merci beaucoup.

Bon courage.

;o)

polux
0
Doudou95 Messages postés 1561 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 30 avril 2019 275
29 mai 2008 à 10:09
C'est la moindre des choses tu es le seul qui a pris le temps pour m'aider merci à toi je réécrirais si j'ai encore besoin d'aide :D bix
0