A voir également:
- Macro excel:coder "pour toutes les feuilles&q
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
1 réponse
Bonsoir,
1) pour les fichiers :
2) pour les feuilles d'un classeur :
cordialement
1) pour les fichiers :
Option Explicit
Public dossier
Public Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
'32-bit API declarations
Declare Function SHGetPathFromIDList Lib "shell32.dll" _
Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
Declare Function SHBrowseForFolder Lib "shell32.dll" _
Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Sub macro_sur_fichiers_xls_Dossier()
' recherche les feuilles de calcul dans une arborescence d'un dossier (et sous dossiers si ".SearchSubFolders = True")
'
Dim fs, i, V_Dossier, V_Nb_Files
Dim fso As New FileSystemObject
V_Dossier = GetDirectory("choisissez le dossier à traiter ")
If V_Dossier <> "" Then
Set fs = Application.FileSearch
With fs
.LookIn = V_Dossier
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() > 0 Then
V_Nb_Files = .FoundFiles.Count
MsgBox "Ce dossier contient " & V_Nb_Files & " fichier(s) répondant aux critères."
For i = 1 To V_Nb_Files
Cells(i + 1, 1).Value = .FoundFiles(i) 'affiche les fichiers dans la feuille de calcul. mettre ici le traitement
Next i
Else
MsgBox "Aucun fichier n'a été trouvé."
End If
End With
End Sub
2) pour les feuilles d'un classeur :
Sub mesfeuilles() Dim i i = 1 For Each vfeuille In ActiveWorkbook.Sheets Cells(i, 1) = vfeuille.Name i = i + 1 Next End Subun For Each / Next convient
cordialement