Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to embed a picture from the web in an excel spreadsheet.

I want to embed the picture by url, in the same manner that pictures are embedded in an html page. I don't want to download the picture and insert it as a regular picture.

And I want the picture to be displayed (if I am online, of course), not just the url.

Can this be done? If so how?

Preferably in excel, but OO calc would be ok to

share|improve this question
Just in case this ever gets you strange errors, then it's good to know that Office might use a browser ("User Agent") known as "Microsoft Office Existence Discovery" before even trying to fetch the image. That User Agent might be seen as a search robot, and hence on some web sites might have different access rights than the IE component that is used to actually fetch the image... A little more info at… – Arjan Oct 8 '09 at 12:50

In Excel, go to Insert > Picture > From file... and type the URL of the picture you want to insert. I don't know if the picture updates itself since I've never tried it.

share|improve this answer
I believe that will just read the picture from the web. – harrymc Oct 8 '09 at 12:34
Yes, It does. It works – ukanth Oct 8 '09 at 12:39

I think the solution is to write a VBA macro that will retrieve the image and embed it into the worksheet.

I think that's the only way for this image to be automatically refreshed.

share|improve this answer

If the URL is in C1, this will put the image in B1 (tested in Excel 2003 and 2013 by me):

Sub Test()
    Dim Pic As Picture
    Application.ScreenUpdating = False
    With ActiveSheet.Range("C1")
        Set Pic = .Parent.Pictures.Insert(.Value)
        With .Offset(, -1)
            Pic.Top = .Top
            Pic.Left = .Left
            Pic.Height = .Height
            Pic.Width = .Width
        End With
    End With
    Application.ScreenUpdating = True
End Sub


share|improve this answer

Follow the below steps,

  1. Click 'Picture' in Insert tab

  2. Insert the URL to image ( jpg | png etc. ) OR select path to an image in your desktop machine

  3. Click the down facing arrow on Insert button and select Insert and Link

  4. Now every time you close and re-open your excel file you will see the updated image ( if it is changed )

enter image description here

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.