Date de prise de vue d'une photo - VBA
Résolu
jean pétévé
-
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Comment extraire la date de prise de vue d'une photo avec VBA ?
Avec les propriétés de l'objet Folder (DateCreated, dateLastModified, Datelastaccessed -
cf http://www.commentcamarche.net/contents/vbscript/vbs-folder.php3)
je peux extraire les dates de création du fichier et de modification, mais pas la date de la prise de vue.
En complément,
1/ dans les propriétés de la photo (.jpg), dans l'onglet Détails :
* date de prise de vue est dans le chapitre "Origine"
* date de création et date de modification sont dans le chapitre "Fichier"
2/ les photos ont été prises avec 2 appareils différents
* de marque CANON (photo enregistrée sur l'ordinateur via la carte mémoire),
dans ce cas la date de prise de vue est la même que la date de création du fichier (donc je n'ai pas de problème)
* de marque SONY (photo enregistrée sur l'ordinateur depuis l'appareil via un cable),
dans ce cas
la date de prise de vue est la date à laquelle la photo a été prise
la date de création du fichier est la date à laquelle la photo a été enregistrée sur l'ordinateur
Merci d'avance
Comment extraire la date de prise de vue d'une photo avec VBA ?
Avec les propriétés de l'objet Folder (DateCreated, dateLastModified, Datelastaccessed -
cf http://www.commentcamarche.net/contents/vbscript/vbs-folder.php3)
je peux extraire les dates de création du fichier et de modification, mais pas la date de la prise de vue.
En complément,
1/ dans les propriétés de la photo (.jpg), dans l'onglet Détails :
* date de prise de vue est dans le chapitre "Origine"
* date de création et date de modification sont dans le chapitre "Fichier"
2/ les photos ont été prises avec 2 appareils différents
* de marque CANON (photo enregistrée sur l'ordinateur via la carte mémoire),
dans ce cas la date de prise de vue est la même que la date de création du fichier (donc je n'ai pas de problème)
* de marque SONY (photo enregistrée sur l'ordinateur depuis l'appareil via un cable),
dans ce cas
la date de prise de vue est la date à laquelle la photo a été prise
la date de création du fichier est la date à laquelle la photo a été enregistrée sur l'ordinateur
Merci d'avance
3 réponses
-
Bonjour,
Il est possible de lister les propriétés contenues dans l'onglet résumé :
<Mes sources>
!!!Activer la référence : "Microsoft Shell Controls and Automation"!!!
Sous VBE : Outils/RéférenceSub ListeProprietesFichiers_getDetailsOf() 'source: 'http://www.microsoft.com/resources/documentation/windows/2000/server/ 'scriptguide/en-us/sas_fil_lunl.mspx ' 'Nécessite d'activer la référence Microsoft Shell Controls and Automation ' Dim objShell As Shell32.Shell Dim strFileName As Shell32.FolderItem Dim objFolder As Shell32.Folder Dim Resultat As String, Reponse As String Dim i As Byte Set objShell = CreateObject("Shell.Application") 'Répertoire cible Set objFolder = objShell.nameSpace("C:\Documents and Settings\michel") 'boucle sur tous les elements du repertoire For Each strFileName In objFolder.Items 'Pour que les dosssiers ne soient pas pris en comptes If strFileName.isFolder = False Then Resultat = "" For i = 0 To 34 If objFolder.getDetailsOf(strFileName, i) <> "" Then _ Resultat = Resultat & objFolder.getDetailsOf(objFolder.Items, i) _ & ": " & objFolder.getDetailsOf(strFileName, i) & vbLf Next Reponse = MsgBox(Resultat & vbLf & vbLf & "Voulez vous continuer?", vbYesNo) If Reponse = vbNo Then Exit Sub End If Next End Sub
A ADAPTER : le chemin d'accès à ton répertoire.
Test le et dis moi s'il liste les bonnes propriétés... j'en doute mais... -
Merci pijaku, c'est ce qu'il me fallait.
En ajoutant les index dans la boîte de message, j'ai pu trouvé celui de la propriété qui m'intéresse. -
Salut, au cas ou vous suivriez toujours ce fil : j'utilise ce bout de code également, seulement dans ma boite de dialogue je me retrouve avec
Année : Année
Nom : Nom
etc.
Pourquoi n'ai-je pas les valeurs après les : ? Pourtant j'ai fait un fidèle copier/coller...
Merci.