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

    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. 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. 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. 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. Super.
            Là, j'ai un lien.
            Mais peut-on afficher l'image dans les cellules du fichier Excel ?

            Merci
            1. Bonjour

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

              Merci
              1. 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