1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| 'original ?
'Prérequis
'créer une feuille ''Code'' avec en tête en ligne 1:
'Colonne A les codes de toutes propriétés
'Colonne B les noms de ces propriétés
'Colonne C un X par exemple pour ne choisir que les plus utiles
'Colonne D index par ordre de péférence (noms que l'on veut, puis tris de A-Z sur colonne D)
'Colonne E les codes (colonne A) du tri de D
' Ne liste que le repertoire choisi (mais affiche les dossiers sous répertoire en nom)
Sub LireExifTags5()
Dim det_Headers(355)
Sheets("Code").Select
' compte le nbre de cellule non vide de la colonne E de la feuille 'Code'
LastRow = Cells(Rows.Count, 5).End(xlUp).Row
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace("C:\Users\PC\Pictures\Test")
Workbooks(1).Sheets(1).Activate
DernLigClear = Range("A" & Rows.Count).End(xlUp).Row
Range("A2:OJ" & DernLigClear).ClearContents 'jusqu'a la colonne 400
For i = 2 To LastRow
c = i - 2
k = Worksheets("Code").Cells(i, 5) 'Seulement les exifs que l'on désire
det_Headers(c) = objFolder.GetDetailsOf(objFolder.Items, k)
ActiveSheet.Cells(2, c + 1) = det_Headers(c) 'headers en ligne 2
Workbooks(1).Sheets(1).Activate
j = 3 ' pour datas en ligne 3
For Each strFileName In objFolder.Items
For m = 1 To LastRow
Next
Sheets(1).Cells(j, i - 1).Value = objFolder.GetDetailsOf(strFileName, k)
j = j + 1
Next
Next
'Columns("A:z").AutoFit
ActiveSheet.UsedRange.EntireColumn.AutoFit
End Sub |
Partager