Traitement de fichiers excel avec vba
Résolu/Fermé
A voir également:
- Traitement de fichiers excel avec vba
- Liste déroulante excel - Guide
- Formule excel - Guide
- Wetransfer gratuit fichiers lourd - Guide
- Déplacer une colonne excel - Guide
- Find vba - Astuces et Solutions
1 réponse
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 mars 2023
2 712
18 oct. 2011 à 14:00
18 oct. 2011 à 14:00
Bonjour,
Il n'est pas nécessaire d'ouvrir les fichiers pour aller y piocher quelques infos.
Regarde cette discussion, tu y trouveras ce code qui va piocher dans tous les fichiers excel d'un même répertoire une date située en A1.
Ne te reste plus qu'à adapter...
Il n'est pas nécessaire d'ouvrir les fichiers pour aller y piocher quelques infos.
Regarde cette discussion, tu y trouveras ce code qui va piocher dans tous les fichiers excel d'un même répertoire une date située en A1.
Sub ImporterDates()
Dim objShell As Object, objFolder As Object
Dim Chemin As String, fichier As String
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&)
If objFolder Is Nothing Then
MsgBox "Abandon opérateur", vbCritical, "Annulation"
Else
Columns(1).NumberFormat = "m/d/yyyy"
Chemin = objFolder.ParentFolder.ParseName(objFolder.Title).Path & "\"
[B1] = Chemin
fichier = Dir(Chemin & "*.xls")
Do While Len(fichier) > 0
ThisWorkbook.Names.Add "Plage", _
RefersTo:="='" & Chemin & "[" & fichier & "]Feuil1'!$A$1"
With Sheets("Feuil2")
.[A1] = "=Plage"
.[A1].Copy
Sheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Sheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Offset(0, 1) = fichier
End With
fichier = Dir()
Loop
End If
End Sub
Ne te reste plus qu'à adapter...
19 oct. 2011 à 17:06
Encore merci, c'est vraiement gentil ce que tu fais !
Bonne continuation