Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Liste des Photos d'un Répertoire par VBA

3 réponses
Avatar
Patrick_67
Bonjour =E0 toutes et =E0 tous,

Je dispose d'une proc=E9dure VBA qui fonctionne parfaitement et qui
liste dans une feuille Excel tous les noms des fichiers d'un
r=E9pertoire.

Mais je dispose aussi d'un r=E9pertoire avec uniquement des photos.
Pour chacune des photos de ce r=E9pertoire, j'ai renseign=E9 (via
l'explorateur de Windows) les champs "Auteurs" et "Mots-Cl=E9s".

Pour chacune des photos du r=E9pertoire concern=E9, je souhaite que la
proc=E9dure VBA liste dans une feuille Excel les 3 infos suivantes :
* le nom de la photo
* son auteur
* ses mots-cl=E9s.

Retrouver le nom de la photo en Excel VBA ne pose pas de probl=E8me.

Par contre, je ne sais pas comment identifier en VBA Excel "l'auteur"
et "les mots-cl=E9s".

Merci d'avance de vos r=E9ponses.

Patrick.

3 réponses

Avatar
JB
Bonjour,

Sub essai()
repertoire = ThisWorkbook.Path
fichier = "imagejb.jpg"
Set myShell = CreateObject("Shell.Application")
Set myFolder = myShell.Namespace(repertoire)
Set myFile = myFolder.Items.Item(fichier)
auteur = myFolder.GetDetailsOf(myFile, 9)
commentaire = myFolder.GetDetailsOf(myFile, 14)
End Sub

JB
http://boisgontierjacques.free.fr


On 9 mar, 10:16, Patrick_67 wrote:
Bonjour à toutes et à tous,

Je dispose d'une procédure VBA qui fonctionne parfaitement et qui
liste dans une feuille Excel tous les noms des fichiers d'un
répertoire.

Mais je dispose aussi d'un répertoire avec uniquement des photos.
Pour chacune des photos de ce répertoire, j'ai renseigné (via
l'explorateur de Windows) les champs "Auteurs" et "Mots-Clés".

Pour chacune des photos du répertoire concerné, je souhaite que la
procédure VBA liste dans une feuille Excel les 3 infos suivantes :
* le nom de la photo
* son auteur
* ses mots-clés.

Retrouver le nom de la photo en Excel VBA ne pose pas de problème.

Par contre, je ne sais pas comment identifier en VBA Excel "l'auteur"
et "les mots-clés".

Merci d'avance de vos réponses.

Patrick.


Avatar
Patrick_67
Merci Jacques pour la réponse et cette intéressante fonction
"GetDetailsOf".

Pour les Mots-Clés : myFolder.GetDetailsOf(myFile, 18)
Pour les Auteurs : myFolder.GetDetailsOf(myFile, 20)
Avatar
gmlsteph
Bonjour,

Sinon, plus globalement j'avais ceci qui est sur excelabo:
Attention ne pas oublier de cocher la référence Ms Shell Controls and
Automation.

Sub LireInfosJpg()
'Dans outil réferences cocher Microsoft Shell Controls and Automation

Dim Chemin As String
Dim myShell As Shell
Dim myFolder As Folder
Dim myFile As FolderItem
Dim i As Byte, f As String, lig As Long

'Indiquer le chemin du répertoire
Chemin = CurDir

Set myShell = CreateObject("Shell.Application")
Set myFolder = myShell.Namespace(Chemin)
'Set myFile = myFolder.Items.Item(f)
Application.ScreenUpdating = False
[a:ah].ClearContents
For i = 0 To 34
If myFolder.GetDetailsOf(myFile, i) <> "" Then _
Cells(1, i + 1) = myFolder.GetDetailsOf(myFile, i)
Next
f = Dir(Chemin & "*.jpg")
Do While Len(f) > 0
Set myFile = myFolder.Items.Item(f)
lig = [a65536].End(xlUp)(2).Row
For i = 0 To 34
If myFolder.GetDetailsOf(myFile, i) <> "" Then _
Cells(lig, i + 1) = myFolder.GetDetailsOf(myFile, i)
Next
f = Dir
Loop
Set myShell = Nothing
Set myFolder = Nothing
Set myFile = Nothing
End Sub


'lSteph



On 9 mar, 10:16, Patrick_67 wrote:
Bonjour à toutes et à tous,

Je dispose d'une procédure VBA qui fonctionne parfaitement et qui
liste dans une feuille Excel tous les noms des fichiers d'un
répertoire.

Mais je dispose aussi d'un répertoire avec uniquement des photos.
Pour chacune des photos de ce répertoire, j'ai renseigné (via
l'explorateur de Windows) les champs "Auteurs" et "Mots-Clés".

Pour chacune des photos du répertoire concerné, je souhaite que la
procédure VBA liste dans une feuille Excel les 3 infos suivantes :
* le nom de la photo
* son auteur
* ses mots-clés.

Retrouver le nom de la photo en Excel VBA ne pose pas de problème.

Par contre, je ne sais pas comment identifier en VBA Excel "l'auteur"
et "les mots-clés".

Merci d'avance de vos réponses.

Patrick.