在Excel VBA中插入图片,方法Pictures失败

5
尝试制作一个宏来逐步插入三张图片到Excel表格中。一个工作表(pics)包含了3张图片的URL,分别在第一行A列到第三行A列中。另一个工作表(outputs)旨在水平输出这些图片。
Sub testinsertpix()
Dim i As Integer
Dim link As String

For i = 1 To 3
link = Worksheets("pics").Cells(i, "A").Value
Cells(1, i).Select
ActiveSheet.Pictures.Insert (link)

Next i

End Sub

它插入了第一张图片,但当循环到第二张图片时失败。

"Pictures类的插入方法失败"

请帮忙解决一下?

2个回答

0

尝试:

Dim link as Variant

然后输出该值并查看出了什么问题。我最好的猜测是您的URL没有按照您的预期进行读取。


URL已经被成功读取。我在循环后面加了一行Msgbox "link"来检查。Excel状态栏也显示它正在下载图片,但它只是给我这个失败的错误消息。 - Liew Tien Qing
你确定开头或结尾没有额外的空格等问题吗?我在vba读取单元格数值时见过各种情况... - SBI

-1

我有一个类似的宏,也遇到了同样的错误。 对我来说,这个方法很有帮助:On error resume next

Sub INSERTPICTURES()
With Sheets("Condition_report")
    Dim cella As Range

    For Each cella In .Range("A1:A10000").Cells

        If cella.Interior.ColorIndex = 3 Then

        ActiveSheet.Shapes.AddPicture Filename:=cella, LinkToFile:=msoFalse, SaveWithDocument:=msoCTrue, Left:=cella.MergeArea.Left, Top:=cella.MergeArea.Top, Width:=cella.MergeArea.Width - 3, Height:=cella.MergeArea.Height
        On Error Resume Next

        End If
    Next
End With
End Sub

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接