Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Export d'images + renommer celles-ci !

fougeron

XLDnaute Nouveau
Bonjour à tous,

Je suis novice en Excel et j'essaie de trouver mon bonheur pour réussir à trouver une solution à mon problème. J'ai un fichier avec en colonne A des noms et en colonne B des images (photos) qui correspondent aux noms de la colonne A. J'essaie de faire un export des images qui seraient nommées par le nom qui correspond à chaque image en colonne A.

J'ai trouvé des macros sur ce forum qui arrivent à me faire un export et à renommer mais chaque images est vierge (blanche) ! Donc, ça ne fonctionne pas. En cherchant sur internet j'ai trouvé cette macro !

Sub ExtractionImagesFeuille()
Dim Pict As Picture
Dim Nb As Byte
Dim ChartObj As ChartObject

For Each Pict In ActiveSheet.Pictures
Pict.CopyPicture 'copie l'image
Set ChartObj = ActiveSheet.ChartObjects.Add(0, 0, Pict.Width, Pict.Height)
ChartObj.Activate
ChartObj.Chart.Paste 'colle l'image dans un graphique temporaire
ChartObj.Chart.Export "C:\Users\m.fougeron\downloads\" & Pict.Name & ".jpg", "jpg" 'Sauvegarde au format image, dans le même répertoire que ce classeur.
Nb = ActiveSheet.ChartObjects.Count
ActiveSheet.ChartObjects(Nb).Delete 'Supprime le graphique
Next Pict

End Sub

Elle fonctionne parfaitement ! Elle me fait un export des photos. Par contre j'ai de modifier ça pour que cette Macro me renomme les photos avec les noms de la colonne A mais je n'y arrive pas... Je commence à désespérer !

De plus, cette macro exporte les photos par rapport à leurs tailles dans le fichier excel ! est-il possible d'avoir un export à la taille réelle de l'image avant l'intégration dans excel ?

Je vous joins un exemple en pièce jointe ! La macro est déjà intégrée dedans.

Si à tout hasard l'un de vous peut m'expliquer comment faire, ce serait top.

Merci à vous d'avoir pris le temps de me lire.
 

Pièces jointes

  • Fichier_TEST_MACRO.xlsm
    262 KB · Affichages: 15

patricktoulon

XLDnaute Barbatruc
pour info
une methode pour connaitre les dim d'une image
VB:
Sub testx()
    dimensions = dimention_image("H:\fond d'ecran\paysages\paysage3.jpg")
Debug.Print Join(dimensions, "X")
End Sub
Function dimention_image(chemin)
    Dim Img As Object
    With CreateObject("WIA.ImageFile"): .LoadFile chemin: dimention_image = Array(.Width, .Height): End With
End Function
 

Staple1600

XLDnaute Barbatruc
Re

On ne peut pas obliger nos petits camarades de jeu à se rappeler qu'à la base Excel est un tableur.
Et qu'il existe moult logiciels pour gérer/traiter les images.

Personnellement, je n'ai jamais eu l'occasion de faire défiler 1938 images et de lire leur noms dans des cellules Excel, dans le cadre d'un boulot.
Ca doit prendre un sacré bout de temps.
 

Staple1600

XLDnaute Barbatruc
Bonsoir lolostaps

[Pour infos]
L'usage c'est de créer sa propre discussion pour y poser sa question
C'est que tu as fait
Et si les réponses tardent à venir, il faut faire ce qu'on appelle "un up"
(C'est à dire, se répondre à soi même dans sa discussion pour que celle-ci se ré-affiche en haut de la liste)
[/Pour infos]

NB: Poster sa question dans le fil d'un autre rend la lecture du fil moins fluide
(On sait plus qui a posé la question initiale et on ne sait plus à qui on réponds)
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…