A voir également:
- VBA : pb boucle de dossiers excel
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
- Vba range avec variable ✓ - Forum VB / VBA
3 réponses
Bonjour
Essaye ceci :
à plus
Essaye ceci :
Sub Essai_vbauser92() ChDrive "G:\" Workbooks.Open "G:\Missions\Reporting DIR\Détail_Pilotage_CONSO.xlsm" ChDir "G:\Missions\Reporting DIR\Reportings" ClasseurPersonnel = Dir("G:\Missions\Reporting DIR\Reportings\*.xlsx") While Len(ClasseurPersonnel) > 0 If ClasseurPersonnel <> "Détail_Pilotage_CONSO.xlsm" Then Workbooks.Open ClasseurPersonnel DerniereLigne = ActiveSheet.UsedRange.Rows.Count ActiveSheet.Range("A7:AB" & DerniereLigne).Copy Windows("Détail_Pilotage_CONSO.xls").Activate DebutNomFichier = ActiveSheet.UsedRange.Rows.Count + 1 ActiveSheet.Range("A" & ActiveSheet.UsedRange.Rows.Count + 1).Select ActiveSheet.Paste Range("AC" & DebutNomFichier & ":AC" & ActiveSheet.UsedRange.Rows.Count) = ClasseurPersonnel Workbooks(ClasseurPersonnel).Close ClasseurPersonnel = Dir End If Wend End Sub
à plus
Bonjour
Voici une nouvelle version testée et fonctionnelle :
j'espère que cela te conviendra.
à plus
Voici une nouvelle version testée et fonctionnelle :
Sub Essai_vbauser92_2() ClasseurPrincipal = ActiveWorkbook.Name ' "Détail_Pilotage_CONSO.xlsm" Chemin = "G:\Missions\Reporting DIR\Reportings\" Application.ScreenUpdating = False ClasseurPersonnel = Dir(Chemin & "*.xls?") While Len(ClasseurPersonnel) > 0 If ClasseurPersonnel <> ClasseurPrincipal Then Workbooks.Open ClasseurPersonnel DerniereLigne = ActiveSheet.Range("A65536").End(xlUp).Row ActiveSheet.Range("A7:AB" & DerniereLigne).Copy Windows(ClasseurPrincipal).Activate DerLig = ActiveSheet.Range("A65536").End(xlUp).Row Cells(DerLig + 1, 1).Value = ClasseurPersonnel Cells(DerLig + 2, 1).Select ActiveSheet.Paste Application.CutCopyMode = False 'Application.DisplayAlerts = False Workbooks(ClasseurPersonnel).Close 'Application.DisplayAlerts = True End If ClasseurPersonnel = Dir Wend Cells(1, 1).Select Application.ScreenUpdating = True End Sub
j'espère que cela te conviendra.
à plus