Afficher les images dans Excel

Résolu
Bonjour,

Je possède un fichier Excel assez volumineux dans lequel j'ai des enregistrements contenant des URL d'images sur Internet.
Je souhaite afficher les images correspondant aux URL dans les cellules d'Excel sur chaque enregistrement contenant une URL.

Merci pour votre aide.

10 réponses

  1. Contributeur
    Bonjour

    principe:
    sur la cellule concernée
    tu fais un copier de l'adresse

    Insertion-lien hypertexte
    dans adresse: coller
    et tu choisis le nom de l'image dans texte à afficher

    tu recommences avec la cellule suivante
    1. Merci pour ta reponse, mais ma liste provient d'une base de donnees, elle contient plus de 1000 enregistrements.
      Je cherche plutot une formule a appliquer.

      Cordialement
      1. Contributeur
        comment sont disposés tes enregistrements?
        par ex: sur 1 feuille et sur la colonne A

        veux tu remplacer les url actuelles par les liens hyper ou mettre ces derniers a coté

        au besoin
        mettre un extrait du classeur ( env.100lignessans données confidentielles en pièce jointe (format XL97-2003) sur
        https://www.cjoint.com/
        et faire un clic droit sur le lien proposé puis "copier l'adresse du lien" et coller dans le message de réponse
    2. Bonsoir,

      Merci de ton aide, tu trouveras le fichier excel en question sur http://db.tt/RCVYRCDr.

      Cordialement, Laurent
      1. Contributeur
        Bonjour

        par macro
        Sub mettre_hypertexte() 
        Dim Derlig As Integer 
             Derlig = Columns("D").Find("*", , , , , xlPrevious).Row 
             Application.screenupdating = False 
             For cptr = 2 To Derlig 
                  ActiveSheet.Hyperlinks.Add Anchor:=Cells(cptr, 4), Address:="http://www.tubconcept.fr/visuels/" & Cells(cptr, 5) 
             Next 
        End Sub

        mais on pourrait juste indiquer le nom de l'image ( par ex: 9006.jpg) sans http://...
        pour cela
        tu supprimes la colonne D
        la macro corrigée

        Sub mettre_hypertexte() 
        Dim Derlig As Integer 
             Derlig = Columns("D").Find("*", , , , , xlPrevious).Row 
             Application.ScreenUpdating = False 
             For cptr = 2 To Derlig 
                  ActiveSheet.Hyperlinks.Add Anchor:=Cells(cptr, 4), Address:="http://www.tubconcept.fr/visuels/" & Cells(cptr, 4), _ 
                  TextToDisplay:=Cells(cptr, 4).Value 
             Next 
        End Sub

        Michel
        1. Super.
          Là, j'ai un lien.
          Mais peut-on afficher l'image dans les cellules du fichier Excel ?

          Merci
          1. Contributeur
            Bonjour,

            Oui, pour une action ( par ex nipple) ou pour l'ensemble?: dans dernier ce cas, tu vas avoir un classeur très lourd (1000lignes x 25 ko)

            dans les 2 cas: hauteurs de lignes importantes

            tu dis...

            Michel
            1. Bonjour

              Peut importe la taille du fichier, je veux le faire sur toutes les lignes.
              J'ajusterai la hauteur.

              Merci
              1. Contributeur
                la colonne D est détruite : le lien hypertexte sur la feuille étant inutile

                a toi de voir pour le hauteurs de lignes ; j'étais à 90, les nipples étant hauts mais je n'ai testé que quelques lignes

                Sub mettre_imageweb() 
                Dim Derlig As Integer, lien As String, cptr As Integer 
                Dim image As Picture, cellule As Range 
                     'initialisations 
                     Derlig = Columns("D").Find("*", , , , , xlPrevious).Row 
                     Application.ScreenUpdating = False 
                     'parcourt la liste 
                     For cptr = 2 To Derlig 
                          ' mémorise url 
                          lien = "http://www.tubconcept.fr/visuels/" & Cells(cptr, 4) 
                           Set cellule = Cells(cptr, 4) 
                           Set image = ActiveSheet.Pictures.Insert(lien) 
                          'insere l'mage web dans la liste du matos 
                           With image.ShapeRange 
                               .Top = cellule.Top + 1 
                               .Left = cellule.Left + 1 
                               .Height = cellule.Height - 10 
                               .Width = cellule.Width - 2 
                               .LockAspectRatio = msoFalse 'garde les proportions de l'original 
                          End With 
                     Next 
                End Sub

                Michel
                1. Contributeur
                  Apparemment, soit Webshop est particulièrement impoli ou soit il s'en f... complètement
              2. Bonjour Michel_m,

                Je te remercie beaucoup pour cette réponse, c'est exactement ce qu'il me fallait.
                Désolé, je ne suis pas impoli, j'étais parti à l'étranger en déplacement professionnel et je n'avais pas accès à Internet facilement.
                Merci encore