[Visual Basic] problème d'enregistreme

Fermé
Help :) - 27 mars 2009 à 07:45
 Help :) - 27 mars 2009 à 10:10
Bonjour,

j'ai ma macro :

Sub command()
Dim annee As Integer

mois = Format(UserForm1.DTPicker1.Value, "mm")
annee = Format(UserForm1.DTPicker1.Value, "yyyy")

xxx = ("Temps_global_" & mois & annee & "")
ActiveWorkbook.SaveAs Filename:=xxx

En fonction du mois et de l'année que je choisis, le nom du classeur change : exemple si je choisis mars 2009 mon classeur excel s'appellera Temps_global_032009. Cependant à cause du activeworkbook.save as etc cela me crée un fichier excel dans mes documents or je voudrais qu'il change le nom du classeur comme précédement mais qu'il ne crée pas un fichier excel dans mes docuements.

J'avais pensé à Activeworkbook.name = xxx mais ça ne fonctionne pas

Merci
A voir également:

3 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
27 mars 2009 à 08:09
Bonjour,


Faut faire:

xxx = ("C:\MonDossier\Temps_global_" & mois & annee & "")
ActiveWorkbook.SaveAs Filename:=xxx

Bon courage

;o)
0
Il me semble que pour moi ça ne pourrait pas fonctionne comme ça car en fait si je choisis janvier 2009 par exemple dans mon calendrier , ma macro va chercher un fichier par rapport à la date que j'ai choisi.

Exemple pour janvier 2009 :

L:\adpDonnées tempP\ecart_global\2009\01

Ne devrais-je pas faire ainsi? :

xxx = ("L:\adpDonnées tempP\ecart_global\"& mois & annee &"\Temps_global_" & mois & annee & "")
ActiveWorkbook.SaveAs Filename:=xxx

Merci :o)
0
Help :) > Help :)
27 mars 2009 à 08:19
Et autre question...Si je fais comme j'ai écris au dessus, les fichiers originaux seront écrasés par mon save as?
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
27 mars 2009 à 09:09
re,

Oui : c'est comme ça qu'il faut faire. Il faut mettre le chemin complet du répertoire où l'on veut sauvegarder le fichier.

Non : le fichier original ne sera pas écrasé. SaveAs() revient à faire "Enregistrer sous". Le nom et l'emplacement du fichier original n'est pas le même.

;o)
0
Daccord merci mais en fait moi je ne veux pas l'enregistrer ce fichier c'est pourquoi mon save as m'emmerde, je voudrais juste que le nom du fichier soit changer en haut par rapport à la date que je choisis mais qu'il ne s'enregistre nulle part ce fichier excel.

C'est pour ça que je voulais juste faire quelque chose du genre

mois = Format(UserForm1.DTPicker1.Value, "mm")
annee = Format(UserForm1.DTPicker1.Value, "yyyy")

lol = ("xxx_xxx_xxx_" & mois & annee & "")
ActiveWorkbook.Name = lol

Pour que le workbook ouvert prenne le nom de mon lol mais il est impossible de faire ActiveWorkbook.Name = lol et je n'ai pas de solution pour faire ça sans enregistrer le fichier avec save as

:o(
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
27 mars 2009 à 09:55
Ca on ne peut pas le faire. La propiété Name est en lecture seule.

Dsl.

;o)
0
Ok merci :o)
0