Charger les images d'une imagelist dans un fihcier excel

foudingu Messages postés 3 Date d'inscription samedi 31 mai 2008 Statut Membre Dernière intervention 4 octobre 2008 - 4 oct. 2008 à 10:49
foudingu Messages postés 3 Date d'inscription samedi 31 mai 2008 Statut Membre Dernière intervention 4 octobre 2008 - 4 oct. 2008 à 13:20
Bonjour,
Je cherche à utiliser des images déjà présentes dans une imagelist et les insérer sous une feuille Excel.

Si je passe par l'étape intermédiaire d'écrire sur le disque, ça marche dans certains cas. Mais sur certains ordinateurs où mon programme doit être installé, les images ne se copient pas sur l'ordinateur et je ne voient pas pourquoi.

'Mise des images sur le disque dur
For j = 0 To Me.ImageList3.Images.Count - 1
      Me.ImageList3.Images(j).Save(répertoire_actuel & "" & j.ToString + 6 & ".jpg")
Next j

'Utilisation des images vers Excel
For j = 0 To 4
      origine_gauche_image_élément = xlsfeuille.Range(xlsfeuille.Cells(1, 1), xlsfeuille.Cells(ligne_début_dino + 2, colonne_début_dino + j - 1)).Width + (xlsfeuille.Range(xlsfeuille.Cells(ligne_début_dino + 2, colonne_début_dino + j), xlsfeuille.Cells(ligne_début_dino + 3, colonne_début_dino + j)).Width - largeur_image_élément) / 2
      origine_haut_image_élément = xlsfeuille.Range(xlsfeuille.Cells(1, 1), xlsfeuille.Cells(ligne_début_dino + 2, colonne_début_dino + j - 1)).Height + (xlsfeuille.Range(xlsfeuille.Cells(ligne_début_dino + 2, colonne_début_dino + j), xlsfeuille.Cells(ligne_début_dino + 2, colonne_début_dino + j + 1)).Height - hauteur_image_élément) / 2
 Try
xlsfeuille.Shapes.AddPicture(répertoire_actuel & "" & j + 6 & ".jpg", True, False, origine_gauche_image_élément, origine_haut_image_élément, largeur_image_élément, hauteur_image_élément)                          
Finally
End Try
Next j
Pour sauter l'étape intermédiaire, j'ai donc essayer de faire :
For j = 0 To 4
xlsfeuille.Shapes.AddPicture(Me.ImageList3.Images(j), True, False,
origine_gauche_image_élément, origine_haut_image_élément,
largeur_image_élément, hauteur_image_élément)
Next j
Mais ça ne marche pas, les images n'apparaissent pas sur Excel

Est-ce que quelqu'un aurait une idée?
Merci,
Vincent

2 réponses

gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
4 oct. 2008 à 12:07
' pour des icones d'une imagelist vers le disque dur








'mais tu peux changer ça en n'importe quel format supporté








'img = imagelist








'apath =currentDir








'fil = nom de fichier








Dim

x


As





Integer

= 1



For





Each

ico


As

Image


In

img.Imagesx = x + 1

pb1.Image = ico

Application.DoEvents()

ico.Save(apath &



"icones"

& IO.Path.GetFileName(fil) & x &


".ico"

, System.Drawing.Imaging.ImageFormat.Icon)



Next













Bonjour chez vous !
0
foudingu Messages postés 3 Date d'inscription samedi 31 mai 2008 Statut Membre Dernière intervention 4 octobre 2008
4 oct. 2008 à 13:20
Merci,
J'essaierai de voir si ça force la sauvegarde des images dans certains cas. Je n'avais pas de Application.DoEvents(), ça peut peut-être aider.

Parce que sur mon ordi aucun soucis avec le 1er code.
Merci,
0
Rejoignez-nous