Microsoft 365 Exifs photos (extractions de données)

Elisa-69

XLDnaute Nouveau
Bonjour,

Je suis à la recherche d'aide sur l'extraction d'informations de photos sur Excel.

Ce n'est pas par rapport au domaine de la photographie mais plus pour me créer une petite base de données par rapport à des photos prises sur des chantiers pour un suivi. Ce ne sont que des photos prises avec des smartphones, je n'aurais besoin que d'info comme qui a pris la photo, où la photo a été prise (ville/région, coordonnées géographique avec liens google maps) et à quelle date.

J'ai réussi à trouver un document Excel sur une ancienne conversation qui justement traite des données GPS + liens google mais une fois la photo "entrée" dans le document elle apparait comme introuvable lors de la réouverture de celui-ci (après enregistrement et sans avoir bougé ou supprimé la photo de mon ordinateur).
J'ai joints le fichier su ça peut vous aider à comprendre.

Je n'ai pas les compétences pour modifier le document en question, après plusieurs échecs. Et j'ai beaucoup de mal à trouver en ligne des vidéos ou conseils sur les codes et leur rédaction (sur le sujet d'extraction des exifs)

Je prends le moindre conseil avec plaisir. Merci d'avance pour le temps accordé à la lecture de mon problème :)
 

Pièces jointes

  • WIA_Image_Excel_GPS_v4.xls
    91 KB · Affichages: 27
Solution
Bonjour @toutes & à tous, bonjour @Elisa-69
Effectivement comme le dit @gbinforme, ton problème de lien rompu vient du fait que l'on supprime le fichier temporaire après la syntaxe .Pictures.Insert.
Si ne pas supprimer le fichier temporaire semble être une solution, c'est quand même dommage de conserver des fichiers temporaires.
J'ai tâtonné pour te proposer une solution :
Sous Excel 2007 il suffit de mettre à blanc la propriété AlternativeText pour régler le problème.
Dans office 2021 (ou 365) cela ne fonctionne pas et je n'ai pas trouvé comment éviter (en VBA) la liaison.
J'ai donc substitué à cette syntaxe la suivante : .Shapes.AddPicture qui permet de ne pas lier la forme au fichier.
Je me suis...

gbinforme

XLDnaute Impliqué
une fois la photo "entrée" dans le document elle apparait comme introuvable lors de la réouverture
Bonjour,
Pour insérer ta photo dans la procédure "compression" tu la mets dans le répertoire "C :\tmp_img\" puis une fois affichée tu supprimes le fichier du répertoire : c'est donc normal qu'elle ne s'affiche plus.
En supprimant ce passage sur ce répertoire cela devrait fonctionner.
 

Pièces jointes

  • WIA_Image_Excel_GPS_v4.xls
    78 KB · Affichages: 14

AtTheOne

XLDnaute Impliqué
Supporter XLD
Bonjour @toutes & à tous, bonjour @Elisa-69
Effectivement comme le dit @gbinforme, ton problème de lien rompu vient du fait que l'on supprime le fichier temporaire après la syntaxe .Pictures.Insert.
Si ne pas supprimer le fichier temporaire semble être une solution, c'est quand même dommage de conserver des fichiers temporaires.
J'ai tâtonné pour te proposer une solution :
Sous Excel 2007 il suffit de mettre à blanc la propriété AlternativeText pour régler le problème.
Dans office 2021 (ou 365) cela ne fonctionne pas et je n'ai pas trouvé comment éviter (en VBA) la liaison.
J'ai donc substitué à cette syntaxe la suivante : .Shapes.AddPicture qui permet de ne pas lier la forme au fichier.
Je me suis basé sur ta pièce jointe pour te proposer une réponse plus complète :
  • J'ai repris ses fonctionnalités (clic sur la miniature pour afficher la photo dans un Userform, Lien vers Google Maps)
  • J'ai commenté mon code pour faciliter son appropriation.
  • J'ai placé toutes les informations dans un tableau structuré "tb_Photos".
  • J'ai géré l'orientation de l'appareil lors de la prise de vue (pour éviter une mauvaise orientation de la miniature et de la vue dans le Userform).
  • J'ai ajouté l'affichage de la date du cliché et de l'auteur.
  • J'ai ajouté une macro pour supprimer des ligne (avec sa miniature)
Pour info des docs que j'ai utilisé
La Spécification EXIF : http://www.cipa.jp/std/documents/e/DC-008-2012_E.pdf
Doc Microsoft sur WIA : https://docs.microsoft.com/en-us/previous-versions/windows/desktop/wiaaut/-wiaaut-imageprocess

Si l'un des posts que tu reçois répond à tes attentes, pense à le marquer en tant que solution à ta demande.

Voir la pièce jointe
Bon courage
Amicalement
Alain
 

Pièces jointes

  • Traitement EXIF.xlsm
    30.7 KB · Affichages: 43

dcear

XLDnaute Nouveau
Bonjour AtTheOne, je vous remercie pour la clarté de xlsm , j'ai globalement compris votre code , j'ai souhaité le modifier pour extraire d'autres données , mais j'avoue qu'après quelques heures.... je sèche.
Si j'ai bien pu extraire les données du tag "Copyright".... beaucoup d'autres me sont inaccessible.s. (ex Model ,Software) ai je raté quelques choses ? en vous remerciant par avance.
 

AtTheOne

XLDnaute Impliqué
Supporter XLD
Bonjour AtTheOne, je vous remercie pour la clarté de xlsm , j'ai globalement compris votre code , j'ai souhaité le modifier pour extraire d'autres données , mais j'avoue qu'après quelques heures.... je sèche.
Si j'ai bien pu extraire les données du tag "Copyright".... beaucoup d'autres me sont inaccessible.s. (ex Model ,Software) ai je raté quelques choses ? en vous remerciant par avance.
Bonjour à toutes & à tous, bonjour @dcear,
Je réponds de mon téléphone,
Je regarderai ta demande la semaine prochaine, là je ne suis pas disponible...
Amicalement
Alain
 

AtTheOne

XLDnaute Impliqué
Supporter XLD
Bonsoir à toutes & à tous, bonsoir @dcear
Tout compte fait, j'ai trouvé un trou ...
Si j'ai bien pu extraire les données du tag "Copyright".... beaucoup d'autres me sont inaccessible.s. (ex Model ,Software) ai je raté quelques choses ?

Il faut utiliser le nom exact des propriétés, et elles ne sont pas toujours présentes dans le fichier :
  • EquipMake : le fabricant de l'appareil
  • EquipModel : Le modèle de l'appareil
  • SoftwareUsed : le firmware de l'appareil ou le logiciel à l'origine de l'image
  • etc
J'ai ajouté un feuille et une macro (clic sur le bouton) à mon fichier pour que tu puisses scruter les propriétés dont tu disposes (avec un exemple d'extraction).
Amicalement
Alain
 

Pièces jointes

  • Traitement EXIF bis.xlsm
    305.3 KB · Affichages: 18

dcear

XLDnaute Nouveau
Merci Alain, pour l'énergie et la passion à résoudre cette question .

Il faut utiliser le nom exact des propriétés, et elles ne sont pas toujours présentes dans le fichier :
  • EquipMake : le fabricant de l'appareil
  • EquipModel : Le modèle de l'appareil
  • SoftwareUsed : le firmware de l'appareil ou le logiciel à l'origine de l'image
  • etc

Les données sont bien présentes dans le fichier .jpg mais il me semble (à vérifier) que Wia automation ne prends en compte que certaines informations (P.name de Img.Properties) lors du chargement du fichier image.

Donc je me dirige plutôt vers l'idée d'une extraction des données exif (iptc xmp) avec ExifTool (csv--> réintégration xlsm).

cordialement
Didier
 

AtTheOne

XLDnaute Impliqué
Supporter XLD
Bonsoir à toutes & à tous, bonsoir @dcear
il me semble (à vérifier) que Wia automation ne prends en compte que certaines informations (P.name de Img.Properties)
As tu regardé le fichier joint et testé l'extraction de toutes les propriétés ?

Car dans mon exemple (avec un SONY RX10M4) j'ai bien les propriétés recherchées et une foule d'autres dont certaines ne sont pas nommées (ex 34864, 34866 etc.)
(Id avec un panasonic FZ20, mon téléphone Samsung et celui de ma compagne) :
Nom de la propriétéTypeValeurs...
ImageDescriptionString
EquipMakeStringSONY
EquipModelStringDSC-RX10M4
OrientationInteger
1​
XResolutionIRational
350​
1​
350​
YResolutionIRational
350​
1​
350​
ResolutionUnitInteger
2​
SoftwareUsedStringDSC-RX10M4 v2.00
DateTimeString2022:08:29 10:20:06
ArtistStringAtTheOne
YCbCrPositioningInteger
2​
CopyrightString
ExifExposureTimeIRational
1​
40​
0,025​
ExifFNumberIRational
28​
10​
2,8​
ExifExposureProgInteger
2​
ExifISOSpeedInteger
100​
34864​
Integer
2​
34866​
Long
100​
ExifVerIVector
4​
Byte
48​
Byte
50​
Byte
51​
...
ExifDTOrigString2022:08:29 10:20:06
ExifDTDigitizedString2022:08:29 10:20:06
36880​
String+02:00
36881​
String+02:00
36882​
String+02:00
ExifCompConfigIVector
4​
Byte
1​
Byte
2​
Byte
3​
...
ExifCompBPPIRational
5​
1​
5​
ExifBrightnessIRational
9984​
2560​
3,9​
ExifExposureBiasIRational
0​
10​
0​
ExifMaxApertureIRational
760​
256​
2,96875​
ExifMeteringModeInteger
5​
ExifLightSourceInteger
0​
ExifFlashInteger
16​
ExifFocalLengthIRational
1103​
100​
11,03​
ExifMakerNoteIVector
33518​
Byte
83​
Byte
79​
Byte
78​
...
ExifUserCommentIVector
64​
Byte
0​
Byte
0​
Byte
0​
...
ExifFPXVerIVector
4​
Byte
48​
Byte
49​
Byte
48​
...
ExifColorSpaceInteger
1​
ExifPixXDimLong
5472​
ExifPixYDimLong
3648​
20545​
StringR98
20546​
IVector
4​
Byte
48​
Byte
49​
Byte
48​
...
ExifFileSourceByte
3​
ExifSceneTypeByte
1​
41985​
Integer
0​
41986​
Integer
0​
41987​
Integer
0​
41988​
IRational
16​
16​
1​
41989​
Integer
30​
41990​
Integer
0​
41992​
Integer
0​
41993​
Integer
0​
41994​
Integer
0​
42034​
IVector
4​
IRational
880​
100​
8,8​
IRational
22000​
...​
GpsVerIVector
4​
Byte
2​
Byte
3​
Byte
0​
...
GpsLatitudeRefStringN
GpsLatitudeIVector
3​
IRational
48​
1​
48​
IRational
8​
...​
GpsLongitudeRefStringE
GpsLongitudeIVector
3​
IRational
7​
1​
7​
IRational
0​
...​
GpsGpsTimeIVector
3​
IRational
8​
1​
8​
IRational
19​
...​
GpsGpsStatusStringA
GpsGpsMeasureModeString
2​
GpsMapDatumStringWGS-84
29​
String
2022:08:29​
30​
Integer
0​
50341​
IVector
28​
Byte
80​
Byte
114​
Byte
105​
...
ThumbnailDataIVector
10036​
Byte
255​
Byte
216​
Byte
255​
...
ThumbnailCompressionInteger
6​
ThumbnailImageDescriptionString
ThumbnailEquipMakeStringSONY
ThumbnailEquipModelStringDSC-RX10M4
ThumbnailOrientationInteger
1​
ThumbnailResolutionXIRational
72​
1​
72​
ThumbnailResolutionYIRational
72​
1​
72​
ThumbnailResolutionUnitInteger
2​
ThumbnailSoftwareUsedStringDSC-RX10M4 v2.00
ThumbnailDateTimeString2022:08:29 10:20:06
ThumbnailArtistStringAtTheOne
JPEGInterFormatLong
35132​
JPEGInterLengthLong
10036​
ThumbnailYCbCrPositioningInteger
2​
ThumbnailCopyRightString
ChrominanceTableIVector
64​
Integer
1​
Integer
1​
Integer
1​
...
LuminanceTableIVector
64​
Integer
1​
Integer
1​
Integer
1​
...

Mais si ta solution alternative te convient, pas de problème ...

Amicalement
Alain
 

dcear

XLDnaute Nouveau
Bien le bonjour à tous et toutes

Merci Alain pour votre alerte -->

As tu regardé le fichier joint et testé l'extraction de toutes les propriétés ?

J'avais bien étudié l'ensemble de l'extraction des données EXIF sur les photos que je souhaitais traitées , certaines données n'étaient pas visibles et OUI parfois la photo était en cause.... d'autres fois Non car la photo possédait bien le contenu du tag dont j'avais besoin.

Je reste perplexe, je n'arrive pas à dégager une idée claire du pourquoi certaines données n'apparaissent pas via la macro excel (qui n'est pas en cause !!!) que vous fournissez.


En Lien , une mise à jour des specs exif
https://web.archive.org/web/2019062...std/documents/e/DC-008-Translation-2019-E.pdf

idem
https://www.cipa.jp/std/documents/download_e.html?DC-008-Translation-2019-E

+ une extraction de données exif de 4 photos (après géoréférencement)

Encore merci , pour votre Macro qui est particulièrement efficace et utile.

cordialement

Didier
 

Pièces jointes

  • out12.xls
    163 KB · Affichages: 15

Discussions similaires

Statistiques des forums

Discussions
311 103
Messages
2 077 048
Membres
242 010
dernier inscrit
Ratovonamana