1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
| Option Explicit
Dim classeur_conso As String
Dim nom_ville As String
Dim cellule_de_la_ville
Sub Consolidation()
'
' Consolidation Macro
Application.DisplayAlerts = False
[A1].CurrentRegion.Offset(1, 0).Clear
ChDir ActiveWorkbook.Path 'c'est le chemin du premier classeur
classeur_conso = ActiveWorkbook.Name 'c'est le mon du classeur
[J2].Select 'on se positionne sur la ville
Do While ActiveCell <> ""
nom_ville = ActiveCell
cellule_de_la_ville = ActiveCell.Address
Workbooks.Open Filename:=nom_ville => à ce niveau cela bloque sous Excel 2010, message d'erreur fichier introuvable!
nom_ville = ActiveWorkbook.Name 'chemin du fichier
Range("A2").Select 'nous on veut A2
Range(Selection, Selection.End(xlToRight)).Select 'sélection droite
Range(Selection, Selection.End(xlDown)).Select 'sélection en bas
Selection.Copy
Windows(classeur_conso).Activate 'on active la fenetre
[A100000].End(xlUp).Offset(1, 0).Select 'très importnat pour sélectionner la cellule vide
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False 'copie des valeurs
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False 'copie du format
Workbooks(nom_ville).Close False ' on ferme la feuille
Range(cellule_de_la_ville).Offset(1, 0).Select
'donc on fait appel à la cellule suivante référence vers le bas
Loop
Application.DisplayAlerts = True
Range("A2").Select 'nous on veut A2
Range(Selection, Selection.End(xlToRight)).Select 'sélection droite
Range(Selection, Selection.End(xlDown)).Select 'sélection en bas
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False 'copie des valeurs
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False 'copie du format
End Sub |
Partager