2012-01-24 14 views
3

Excelシートに.gifファイルへのURLのリストがあります。私はVBAを使用してこれらのウェブサイトを照会し、これらの画像を同じワークシートに挿入したいと考えています。することはできませんVBAを使用してWebからExcelにイメージ(GIF)をインポートできますか?

http://.../blah.GIFを開けませんインターネットサイト:機能のウェブサイトを照会するが、それは次のエラーが返されました - 私は、Excel 2007

私は「ウェブからの外部データの取り込み」を使用してみました

を使用しています。 (HTTP/1.0 403) "

Excelはこの機能でオンライン画像をインポートできないため、これはありますか?または、この問題は特にウェブサイトに関連していますか?

そして、最も重要なのは、これをVBAで完全に行うための他の方法がありますか?

答えて

9

はい、できます。実際にはかなり簡単です。 Excelには、AddPicture関数があります。 Excel VBAヘルプから:

AddPicture関数(ファイル名、LinkToFile、SaveWithDocument、左、上、幅、高さ)は、このような

用途:

Sheets(1).Shapes.AddPicture "http://www.mywebsite.com/images/map.gif" _ 
          , msoFalse, msoTrue, 100, 100, 500, 600 

左、上、幅、高さ&すべての必要との点でされています。

+0

これは私が探していたものです。ありがとうございました! – Excellll

+0

+1良い答え – JimmyPena

+0

私はExcel VBAを初めて使用しています。このコードはどこに入力しますか? –

3

まず、画像をダウンロードします。これを行うにはいくつかの方法があります。私はURLDownloadToFile APIを使用します。

Use the URLDownloadToFile API function to download a file from a URL into a file *:

Private Declare Function URLDownloadToFile Lib "urlmon" _ 
    Alias "URLDownloadToFileA" (ByVal pCaller As Long, _ 
    ByVal szURL As String, ByVal szFileName As String, _ 
    ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long 

(完全なコードのための*訪問リンク)

次に、このようなコードサンプルは、あなたが好きな場所のワークシート上にそれらをインポートします:

Insert pictures using VBA in Microsoft Excel *から:

Sub TestInsertPicture() 
    InsertPicture "C:\FolderName\PictureFileName.gif", _ 
     Range("D10"), True, True 
End Sub 

(*訪問リンクf ull code)

元の著者には公平であるため、ここではコード全体を再掲載しません。主にリンクベースの回答に対する謝罪。

関連する問題