Const Col_Nom = 4, Col_Path = 5, Col_Path_R = 6
Const Col_Taille = 7, Col_AUTEUR = 8, Col_DateCréation = 9, Col_DateModif = 10, Col_DateAccès = 11
Const pTaille = 1, pDateModif = 3, pDateCréation = 4, pDateAccès = 5, pAuteur = 20
Sub LirePropriétésFichiersFermés()
Dim oShell As Object, oFolder As Object, oFolderItem As Object
Dim FSo As Object, FSoFi As Object
Dim tablo, NomFich$, lgn%
Set oShell = CreateObject("Shell.Application")
Set FSo = CreateObject("Scripting.FileSystemObject")
'Récupérer les données du tableau structuré "_Liste"
tablo = sh_LstFich.[_Liste]
For lgn = 1 To UBound(tablo)
NomFich = tablo(lgn, Col_Path_R) & "\" & tablo(lgn, Col_Nom)
If FSo.FileExists(NomFich) Then
Set oFolder = oShell.Namespace(tablo(lgn, Col_Path_R))
Set oFolderItem = oFolder.Items.Item(tablo(lgn, Col_Nom))
Set FSoFi = FSo.GetFile(NomFich)
tablo(lgn, Col_Taille) = Format(CLng(FSoFi.Size), "#,###") & " (" & oFolder.GetDetailsOf(oFolderItem, pTaille) & ")"
tablo(lgn, Col_AUTEUR) = oFolder.GetDetailsOf(oFolderItem, pAuteur)
tablo(lgn, Col_DateCréation) = FSoFi.DateCreated
tablo(lgn, Col_DateModif) = FSoFi.DateLastModified
tablo(lgn, Col_DateAccès) = FSoFi.DateLastAccessed
Set objFolder = Nothing: Set oFolderItem = Nothing: Set FSoFi = Nothing
End If
Next
Set oShell = Nothing: Set FSo = Nothing
'Coller les résultat dans le tableau
sh_LstFich.[_Liste].Value = tablo
End Sub