【问题标题】:Insert image from URL in Excel: error for various methods在 Excel 中从 URL 插入图像:各种方法的错误
【发布时间】:2014-03-06 12:33:15
【问题描述】:

我正在尝试将网站中的图片插入到 Excel 工作表中,但无论我尝试哪种方法都会收到错误消息。

我使用的 URL(“MyURL”)格式为:

https://x.x.x.x:pppp/chart.png?id=10...apid=secretkey

但如果我使用任何其他图片 url,它也可以工作......即使它有参数,例如:

http://www.mrexcel.com/forum/avatars/[personsname].gif?dateline=2007

MyUrl 在任何浏览器中都能正常工作,但在 Excel 中却不行。

我用过这些方法:

A) 图片.插入

ActiveSheet.Pictures.Insert ("MyURL")

  • 给出错误:“运行时错误 1004:无法获取图片类的插入属性”

B) Shapes.AddPicture

wsht.Shapes.AddPicture "MyURL", msoFalse, msoTrue, 0, 0, 100, 100

  • 给出错误:“运行时错误 1004:找不到指定的文件”

C) 插入 > 图片 > 将 URL 粘贴到文件名中

  • 给出错误:“导入此文件时出错”

D) 将 MyUrl 转换为短网址

给出错误:

  • A - “图片类的插入方法失败”

  • B - “找不到指定的文件”

  • C -“导入此文件时出错”

我的系统: Windows 8、Excel 2013

有什么问题?

【问题讨论】:

标签: image excel vba url insert


【解决方案1】:

感谢您的帮助。

我找到了解决该问题的方法(不在 Excel 中)...使用 VBscript 保存图像,然后将其导入 Excel。问题出在安全证书上。使用脚本会忽略错误。

dim xHttp: Set xHttp = CreateObject("MSXML2.ServerXMLHTTP.6.0")
xHttp.setOption 2, 13056

dim bStrm: Set bStrm = createobject("Adodb.Stream")
xHttp.Open "GET", "MyURL", False

xHttp.Send

with bStrm
    .type = 1 '//binary
    .open
    .write xHttp.responseBody
    .savetofile "c:\BI\SyncScript\graph.png", 2 '//overwrite
end with

【讨论】:

    【解决方案2】:

    这可能与您的 Internet 设置和/或安全设置有关......如果您运行这个小宏并激活一个空白工作表:

    Sub PictureGrabber()
        With ActiveSheet.Pictures
            .Insert ("http://www.dogbreedinfo.com/images26/PugPurebredDogFawnBlackMax8YearsOld1.jpg")
        End With
    End Sub
    

    会发生什么??

    【讨论】:

    • 奇怪,它突然起作用了......只是使用了代码 ActiveSheet.Pictures.Insert(“在此处复制粘贴 URL”)。 Tnx ;)
    • 好的...现在它不再工作了...我没有更改任何内容...将查看安全设置。有什么建议可以看看吗?
    • 嗨,加里。您的程序运行良好(没有问题),但我的程序仍然无法正常工作。当我使用我的 URL 时,我得到一个弹出窗口 (puu.sh/7lYfS.png),我说继续,但随后得到运行时错误“1004”:“图片类的插入方法失败”。
    猜你喜欢
    • 1970-01-01
    • 2021-05-30
    • 1970-01-01
    • 2017-08-10
    • 1970-01-01
    • 1970-01-01
    • 2016-06-24
    • 1970-01-01
    • 2011-12-20
    相关资源
    最近更新 更多