ok, je te file la macro
par contre il persiste un petit probleme: quand la macro me copie le contenu des cellules qui m'intéressent, il copie avec la formule, j'aimerais qu'il copie "les valeurs seulement".
Si tu as la soluce, renvoie moi la macro en entier stp (répond aussi si tu l'a pas)
Sub Macro1()
' Mettre le bon chemin
Dim CheAn, Chemois, Fichxl, T_M(12) As String
Dim T_An(4), X, M, Lig As Integer
' Mise en place des noms dossiers An dans X postes
T_An(1) = 2003: T_An(2) = 2004: T_An(3) = 2005: T_An(4) = 2006
' Vous pouvez traiter An par an sur 4 feuilles et regrouper (copier/coller)
' les 4 feuilles en 1
' Tableau des dossiers Mois (juste l'élément qui varie)
T_M(1) = "01": T_M(2) = "02": T_M(3) = "03": T_M(4) = "04":
T_M(5) = "05": T_M(6) = "06": T_M(7) = "07": T_M(8) = "08":
T_M(9) = "09": T_M(10) = "10": T_M(11) = "11": T_M(12) = "12":
For X = 1 To 4 ' On boucle 4 fois pour 4 ans
' on charge le répertoire d'1 année T_An(X) dans la variable Chemxl
CheAn = "E:\CD\Bilans_Journaliers_Choisy\" & T_An(X) & "\" & T_An(X) & "_"
For M = 1 To 12 ' on va sur 12 dossiers Mois
' en pas à pas, on doit lire le chemin exact du dossier dans chemois
Chemois = CheAn & T_M(M)
' la commande DIR met le nom du 1er .XLS du dossier chemois\... dans FichXL
Fichxl = Dir(Chemois & "\*.XLS" )
Do While Fichxl <> "" ' si plus de fichier => fin
Workbooks.Open Filename:= _
Chemois & "\" & Fichxl
'"C:\Documents and Settings\JPIERRE\Mes documents\Excel\LEVIER1.xls"
'BK45, BL45, BM45
Range("BK45:BM45" ).Select ' on select/copy 3 cellules lig.45
Selection.Copy
Windows("Anmois.xls" ).Activate ' on va sur l'XL central à la bonne ligne
Lig = Lig + 1 ' 1 ligne 12 cellules
Range("A" & Lig).Select ' Col A ligne Lig, chemin & fichier
ActiveCell.Value = Chemois & "\" & Fichxl
Range("B" & Lig).Select ' Col B lig.45
ActiveSheet.Paste
Windows(Fichxl).Activate ' on va copier la lig.46
Range("BK46:BM46" ).Select
Selection.Copy
Windows("Anmois.xls" ).Activate ' on va sur l'XL central Col E ligne Lig46
Range("E" & Lig).Select
ActiveSheet.Paste
Windows(Fichxl).Activate ' on va copier la lig.47
Range("BK47:BM47" ).Select
Selection.Copy
Windows("Anmois.xls" ).Activate ' on va sur l'XL central Col H ligne Lig47
Range("H" & Lig).Select
ActiveSheet.Paste
Windows(Fichxl).Activate ' on va copier la lig.48
Range("BK48:BM48" ).Select
Selection.Copy
Windows("Anmois.xls" ).Activate ' on va sur l'XL central Col H ligne Lig48
Range("K" & Lig).Select
ActiveSheet.Paste
Windows(Fichxl).Activate ' on revient sur le fcihier lu
Application.DisplayAlerts = False
ActiveWorkbook.Close ' pour le fermer
Application.DisplayAlerts = True
Fichxl = Dir ' nom Fichier suivant
Loop
Next M
' Sauvegarde du tableau chaque fin de dossier mois
' Remplacer le chemin "C:\Documents and Settings\Anmois.xls" par le bon.
ActiveWorkbook.SaveAs Filename:="E:\CD\Bilans_Journaliers_Choisy\Anmois.xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Next X
' en pas à pas, on peut passer de la macro à la feuille et suivre le travail
' Quand tout va bien, F5 exécute sans pas à pas...
' Macro1 Macro
'
'
End Sub
ciao