2014-01-13 69 views
0

我是VBA新手,正在嘗試製作一個使用單元格內容作爲要插入的圖片文件名稱的宏。我一直得到1004錯誤:圖片類的插入方法失敗。我該如何解決?VBA - .pictures.insert的語法不正確?插入圖片類的方法失敗

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 
+1

由於您沒有進行函數調用(不期望返回值),因此省略括號。 – Floris

回答

0

你真的需要:

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" 

看看是否能爲你的作品(用適當的路徑),然後添加東西回來,直到它失敗,讓我們知道,如果你仍然不能想辦法。

相關問題