Bonjour a tous,
(desole pour les accents je travaille sur QWERTY)
Grace a ce forum j'ai pu m'ameliorer dans la creation de macro et je vous en remercie.
Toutefois, je bloque actuellement sur la creation d'une macro qui me permettrait d'importer plusieurs classeurs excel (qui sont tous enregistres dans le meme dossier) dans un classeur general.
Voici le code que j'utilisais au debut, qui fonctionne tres bien pour 2 ou 3 classeurs, mais qui ne fonctionne pas pour le nombre important de classeurs que je possede desormais.
J'ai essaye de le modifier comme ceci, mais ca ne fonctionne pas... :/
Auriez-vous une suggestion pour ameliorer cette macro qui ne fonctionne pas ou alors une nouvelle macro?
En vous remerciant tous par avance.
Cordialement
Delux
(desole pour les accents je travaille sur QWERTY)
Grace a ce forum j'ai pu m'ameliorer dans la creation de macro et je vous en remercie.
Toutefois, je bloque actuellement sur la creation d'une macro qui me permettrait d'importer plusieurs classeurs excel (qui sont tous enregistres dans le meme dossier) dans un classeur general.
Voici le code que j'utilisais au debut, qui fonctionne tres bien pour 2 ou 3 classeurs, mais qui ne fonctionne pas pour le nombre important de classeurs que je possede desormais.
Code:
Sub Import_Find_Folder()
'Folder selection
Dim dossier As FileDialog
Dim dl As Integer
Application.EnableEvents = False
Set dossier = Application.FileDialog(msoFileDialogFolderPicker)
dossier.Show
If dossier.SelectedItems.Count > 0 Then pfile = dossier.SelectedItems(1) & "\" 'Path to saved excel files
nfile = Dir(pfile & "*.xls") 'ou xlsx ou xlsm (name of The document)
i = 10 'Activation de la deuxieme ligne
dl = Sheet1.Range("A65000").End(xlUp).Row + 1
Sheet1.Range("A10:Z65000").ClearContents
Do Until nfile = ""
Sheet1.Range("Z1").Formula = "=COUNTA('" & pfile & "[" & nfile & "]sheet1'!$A$10:A500000)"
j = Int(Range("Z1")) + i - 1
Range("A" & i & ":C" & j - 1) = "='" & pfile & "[" & nfile & "]sheet1'!A10" 'imported range
Range("I" & i & ":R" & j - 1) = "='" & pfile & "[" & nfile & "]sheet1'!I10"
i = j
nfile = Dir()
Loop
Range("Z1").Clear
With Range("A10:R60000")
.Value = .Value
End With
End Sub
J'ai essaye de le modifier comme ceci, mais ca ne fonctionne pas... :/
Code:
Sub Import_Find_Folder2()
Dim dossier As FileDialog
Dim dl As Integer
Application.EnableEvents = False
Set dossier = Application.FileDialog(msoFileDialogFolderPicker)
dossier.Show
If dossier.SelectedItems.Count > 0 Then pfile = dossier.SelectedItems(1) & "\" 'Path to save excel files
nfile = Dir(pfile & "*.xls") 'ou xlsx ou xlsm (name of The document)
i = 10 'Activation de la deuxieme ligne
dl = Sheet1.Range("A65000").End(xlUp).Row + 1
Sheet1.Range("A10:Z" & dl).ClearContents
Do Until nfile = ""
Workbooks(nfile).Sheets("Checking Form").Range("A10:R" & Workbooks(nfile).Sheets("Checking Form").Range("A65536").End(xlUp).Row).Copy ThisWorkbook.Sheets("MASTER").Range("A" & dl)
Workbooks(nfile).Close
nfile = Dir()
Loop
End Sub
Auriez-vous une suggestion pour ameliorer cette macro qui ne fonctionne pas ou alors une nouvelle macro?
En vous remerciant tous par avance.
Cordialement
Delux