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 04/02/2010, 10h05   #1
Membre du Club
 
Avatar de Djromé
 
Inscription : juillet 2009
Messages : 157
Détails du profil
Informations personnelles :
Localisation : Luxembourg

Informations forums :
Inscription : juillet 2009
Messages : 157
Points : 58
Points : 58
Par défaut Insérer dans différents fichier selon le mois

Salut les Kracks,

J'ai un fichier que je place au quotidien sur un drive (une macro me fait la transformation et me la sauvegarde au bon endroit), cependant, pour une question d'archivage, je souhaiterai que le Workbook du jour aille se placer dans le fichier correspondant au mois et à l'année en cours (en rouge dans mon exemple):
Code :
1
2
3
4
5
6
ChDir _
        "X:\February 2010"'du genre Format("mmmm") & _ & "yyyy")
    ActiveWorkbook.SaveAs Filename:= _
        "X:\February 2010\" & "Mon classeur" & Format(Date, "ddmmyyyy") & ".xls" _
        , FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False
Comme le workbook est toujours celui du jour 04022010, il suffit donc de pouvoir moduler de la même manière les classeurs des mois, la difficulté est dans le fait que ceux-ci doivent se nommer: February, March etc... à la place 02 2010, 03 2010 etc...

Merci
__________________
Merci les kracks,

Apprendre à un imbécile, c'est comme soigner un mort
"alors avec moi, bon courage!"
(дурака учить, что мертвого лечить, c'est plus beau en Russe!)
Djromé est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/02/2010, 10h25   #2
Membre Expert
 
Avatar de Fvandermeulen
 
Frédéric Vandermeulen
Inscription : juillet 2007
Messages : 1 716
Détails du profil
Informations personnelles :
Nom : Frédéric Vandermeulen
Âge : 36
Localisation : Belgique

Informations forums :
Inscription : juillet 2007
Messages : 1 716
Points : 2 108
Points : 2 108
Salut
Et pourquoi pas un Select Case? Du genre

Code :
1
2
3
4
5
6
7
8
9
10
11
Dim LeMois As String, LeFolder As String
 
Select Case Month(Date)
    Case Is = 1
        LeMois = "January "
    Case Is = 2
        LeMois = "February"
    'Et ce pour les 12 mois
End Select
 
LeFolder = "X:\" & LeMois & " " & Year(Date)
A+
__________________
N'oubliez pas le si votre problème est solutionné.
Fvandermeulen est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2010, 07h42   #3
Membre du Club
 
Avatar de Djromé
 
Inscription : juillet 2009
Messages : 157
Détails du profil
Informations personnelles :
Localisation : Luxembourg

Informations forums :
Inscription : juillet 2009
Messages : 157
Points : 58
Points : 58
Merci pour ton aide!

Bonjour Vandermeulen,

J'ai déclaré mes variables et tous semble fonctionner.
Cependant, je pense que je ne connais pas la syntaxe qui va avec une variable pour la fonction ACtiveworkboo.saveas Filename

Pour le ChDir, il m'indique bien le chemin voulu, mais il me met le code aprés en erreur (en rouge ici):
Code :
1
2
3
4
5
6
ChDir _
        LeFolder
    ActiveWorkbook.SaveAs Filename:= _
       "LeForder\" & "Mon report " & Format(Date, "ddmmyyyy") & ".xls" _
        , FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False
D'avance merci
__________________
Merci les kracks,

Apprendre à un imbécile, c'est comme soigner un mort
"alors avec moi, bon courage!"
(дурака учить, что мертвого лечить, c'est plus beau en Russe!)

Dernière modification par AlainTech ; 25/04/2010 à 09h54. Motif: Fusion de 2 messages
Djromé est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2010, 09h19   #4
Membre Expert
 
Avatar de Fvandermeulen
 
Frédéric Vandermeulen
Inscription : juillet 2007
Messages : 1 716
Détails du profil
Informations personnelles :
Nom : Frédéric Vandermeulen
Âge : 36
Localisation : Belgique

Informations forums :
Inscription : juillet 2007
Messages : 1 716
Points : 2 108
Points : 2 108
Salut,
De deux choses l'une, tu as écrit LeForder au lieu de LeFolder.
De plus tu l'as mis en guillements, donc est considéré comme du text et non plus comme une variable, la bonne syntaxe:

Code :
1
2
3
4
5
6
ChDir _
        LeFolder
    ActiveWorkbook.SaveAs Filename:= _
       LeFolder & "\" & "Mon report " & Format(Date, "ddmmyyyy") & ".xls" _
        , FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False
A+
__________________
N'oubliez pas le si votre problème est solutionné.
Fvandermeulen est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2010, 12h19   #5
Membre du Club
 
Avatar de Djromé
 
Inscription : juillet 2009
Messages : 157
Détails du profil
Informations personnelles :
Localisation : Luxembourg

Informations forums :
Inscription : juillet 2009
Messages : 157
Points : 58
Points : 58
Merci Frédéric,

Je me suis un peu emmêlé les pinceaux avec les " et les &...


Bonne journée
__________________
Merci les kracks,

Apprendre à un imbécile, c'est comme soigner un mort
"alors avec moi, bon courage!"
(дурака учить, что мертвого лечить, c'est plus beau en Russe!)
Djromé est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 15h00.


 
 
 
 
Partenaires

Hébergement Web