XL 2010 VBA : consolidation

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Rousseau Benoit

XLDnaute Nouveau
Bonjour,

je ne suis pas du tout un expert de VBA mais j'ai besoin de consolider de manière pratique des fichiers .xls présentant plusieurs onglets (3). Cependant les données que je souhaite consolider sont toutes dans un onglet rigoureusement identique appelé "List".
J'ai trouvé et adapté la macro VBA suivante (cf. ci-dessous). Cependant je suis incapable de déclarer dans la boucle que je veux comme onglet actif pour chaque classeur l'onglet "List". De ce fait la macro ne fonctionne pas sur les fichiers que j'ai à traiter...
Je vous serez sincèrement reconnaissant de l'aide que vous pourrez m'apporter.
Bien cordialement
benoit


Option Explicit
'Declaration des variables à savoir les fichiers'
Dim NomClasseur As String
Dim LigneTotal As Integer
Dim DerLigne As Integer


'Procédure de consolidations de décla EU'
Sub Consolider()

'Etape 1: création des entêtes'
Range("A1").Value = "EU Submission *"
Range("B1").Value = "n° agrément"
Range("C1").Value = "n° d'EU sur APAFiS"
Range("D1").Value = "n° de la demande"
Range("E1").Value = "Animal Species*"
Range("F1").Value = "Specify other"
Range("G1").Value = "Re-use*"
Range("h1").Value = "PLace of birth (origin)"
Range("L1").Value = "Genetic status*"
Range("M1").Value = "Creation of new GL*"
Range("N1").Value = "Purpose"
Range("o1").Value = "specicify other"
Range("p1").Value = "testing by legislation"
Range("q1").Value = "specicify other"
Range("r1").Value = "legilative Requirements"
Range("s1").Value = "Severity*"
Range("t1").Value = "fichier source"

Range("A1:s1").Interior.Color = vbBlue 'couleur de rempli'
Range("A1:s1").Font.Color = vbWhite 'couleur de la police'
Range("S1").Font.Bold = True

'Parcours des fichiers du dossier'
ChDir "C:\Users\XXX\Desktop\EN" 'à changer en fonction de ton emplacement'
NomClasseur = Dir("C:\Users\XXX\Desktop\EN\*.xls")
'boucle de recherche des classeurs'
While Len(NomClasseur) > 0
Application.DisplayAlerts = False
Workbooks.Open NomClasseur 'ouverture des classeurs'
LigneTotal = ActiveSheet.UsedRange.Rows.Count 'récupération du nb de lignes/fichier'
Range("A4:s" & LigneTotal).Copy
Workbooks("Consolidation.xlsm").Activate
DerLigne = ActiveSheet.UsedRange.Rows.Count + 1 'recherche la dernière ligne'
Range("A" & DerLigne).Select
ActiveSheet.Paste
Range("T" & DerLigne & ":T" & ActiveSheet.UsedRange.Rows.Count) = NomClasseur
Workbooks(NomClasseur).Close
NomClasseur = Dir
Wend
'suppression des extensions'
Columns("T:T").Replace ".xls", ""


End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
428
Retour