Date de prise de vue d'une photo - VBA
Résolu
jean pétévé
-
pijaku Messages postés 13513 Statut Modérateur -
pijaku Messages postés 13513 Statut Modérateur -
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
A voir également:
- Date de prise de vue d'une photo - VBA
- Vue satellite en direct gratuit de ma maison - Guide
- Google photo - Télécharger - Albums photo
- Vue de profil instagram - Guide
- Photo filtre 7 gratuit - Télécharger - Retouche d'image
- Cette photo n’a pas été prise cette année. trouvez la date, l'heure et avec quel modèle d'appareil photo elle a été prise. - Forum Photo numérique
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érence
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...
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érence
Sub 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.
En ajoutant les index dans la boîte de message, j'ai pu trouvé celui de la propriété qui m'intéresse.