VBA-用于.pictures.insert的语法不正确?图片类的插入方法失败

VBA-用于.pictures.insert的语法不正确?图片类的插入方法失败,vba,Vba,我是VBA新手,正在尝试制作一个宏,该宏使用单元格内容作为要插入的图片文件的名称。我一直收到1004错误:图片类的插入方法失败。我该如何解决这个问题 Sub simplepic() ' ' simplepic Macro ' ' Keyboard Shortcut: Ctrl+l ' ActiveCell.Select Dim picname As String picname = Range(ActiveCell) ActiveCell.Offset(rowOf

我是VBA新手,正在尝试制作一个宏,该宏使用单元格内容作为要插入的图片文件的名称。我一直收到1004错误:图片类的插入方法失败。我该如何解决这个问题

Sub simplepic()
'
' simplepic Macro
'
' Keyboard Shortcut: Ctrl+l
'
    ActiveCell.Select
    Dim picname As String
    picname = Range(ActiveCell)
    ActiveCell.Offset(rowOffset:=-1).Select
    ActiveSheet.Pictures.Insert ( _
        "C:\Users\Briet\Documents\PAJ\pic-presentation\Images\" & picname & ".jpg")
End Sub
你真的需要:

ActiveCell.Select
Dim picname As String
picname = Range(ActiveCell)
看来你想要

Dim picname As String
picname = ActiveCell.Value
  • 无需选择活动单元格(它处于活动状态,即已选中)
  • 您不想引用基于活动单元格值的范围,是吗?您可能想要单元格的值
下一个问题可能是选择“此单元格上方的单元格”的方式。我发现以下代码工作正常(没有错误):


看看这是否对您有效(使用适当的路径),然后再添加内容,直到失败为止,如果您仍然无法解决问题,请告诉我们。

由于您没有进行函数调用(不需要返回值),请不要使用括号。
ActiveCell.Select
Dim picname As String
picname = ActiveCell.Value
ActiveCell.Offset(-1, 0).Select
ActiveSheet.Pictures.Insert "C:\myPath\myPicture.png"