Bonjour
Je ne suis pas développeur mais utilise excel et bidouille des macros qui ont été partagées
Mon problème :
J'ai donc bidouillé une macro pour aller ouvrir, fermer / copier, coller les données de la feuil1 de tous les classeurs présents dans un dossier
Cela fonctionne bien pour le premier classeur ouvert mais pas pour le second
A partir du second : la macro ne prend en compte la ligne où elle se trouve et pas la ligne1 du nouveau classeur ! ??
Voici le code... si quelqu'un peut m'aider ?
Je vous remercie :
Sub RecapEPS15()
Dim Chemin As String, Fichier As String
Dim Ws As Worksheet
Dim Ligne As Long
Application.ScreenUpdating = False
Set Ws = Sheets("Feuil1")
Ws.Columns("A").ClearContents
Chemin = ThisWorkbook.Path & Application.PathSeparator
Ligne = 1
Fichier = Dir(Chemin & "*.xlsx")
Do While Fichier <> ""
With Workbooks.Open(Chemin & Fichier)
With .Sheets(1)
.Range("A1" & .Range("A" & Rows.Count).End(xlUp).Row).Copy Ws.Range("A" & Ligne)
End With
Ws.Range("A" & Ligne & ":A" & Ws.Range("A" & Rows.Count).End(xlUp).Row).Value = .Name
.Close savechanges:=False
End With
Ligne = Ws.Range("A" & Rows.Count).End(xlUp).Row + 1
Fichier = Dir
Loop
Ws.Range("A11" & Ligne - 1).TextToColumns DataType:=xlDelimited, Tab:=False, Semicolon:=True, Comma:=False, Space:=False, Other:=False, _
FieldInfo:=Array(Array(1, xlDMYFormat), Array(5, xlDMYFormat))
End Sub
Bien à vous
Je ne suis pas développeur mais utilise excel et bidouille des macros qui ont été partagées
Mon problème :
J'ai donc bidouillé une macro pour aller ouvrir, fermer / copier, coller les données de la feuil1 de tous les classeurs présents dans un dossier
Cela fonctionne bien pour le premier classeur ouvert mais pas pour le second
A partir du second : la macro ne prend en compte la ligne où elle se trouve et pas la ligne1 du nouveau classeur ! ??
Voici le code... si quelqu'un peut m'aider ?
Je vous remercie :
Sub RecapEPS15()
Dim Chemin As String, Fichier As String
Dim Ws As Worksheet
Dim Ligne As Long
Application.ScreenUpdating = False
Set Ws = Sheets("Feuil1")
Ws.Columns("A").ClearContents
Chemin = ThisWorkbook.Path & Application.PathSeparator
Ligne = 1
Fichier = Dir(Chemin & "*.xlsx")
Do While Fichier <> ""
With Workbooks.Open(Chemin & Fichier)
With .Sheets(1)
.Range("A1" & .Range("A" & Rows.Count).End(xlUp).Row).Copy Ws.Range("A" & Ligne)
End With
Ws.Range("A" & Ligne & ":A" & Ws.Range("A" & Rows.Count).End(xlUp).Row).Value = .Name
.Close savechanges:=False
End With
Ligne = Ws.Range("A" & Rows.Count).End(xlUp).Row + 1
Fichier = Dir
Loop
Ws.Range("A11" & Ligne - 1).TextToColumns DataType:=xlDelimited, Tab:=False, Semicolon:=True, Comma:=False, Space:=False, Other:=False, _
FieldInfo:=Array(Array(1, xlDMYFormat), Array(5, xlDMYFormat))
End Sub
Bien à vous