2013-03-23 81 views
-4

如果插入圖像和重新調整大小的不同線程一直在讀取很多內容,但無法找到完全符合我想要的內容的內容。Excel VBA從圖像名稱列中插入圖像

所以說我有一個電子表格2行。列A是圖像列,列B是圖像名稱。

我想要一個腳本,它將遍歷列B中的每個值,將與該名稱匹配的圖像插入到A列的同一行中,將其大小調整爲適合大小爲150的單元格,大小爲18然後轉到下一行並通過電子表格重複。

+0

如果您已經閱讀了很多,那麼想必您已經嘗試了一些這些東西。請告訴我們[你到目前爲止嘗試了什麼](http://whathaveyoutried.com)以及你想要改變/修正你已經嘗試的方法。 – 2013-03-23 16:34:14

回答

4

這是一個將遍歷可修改的單元格範圍(B1:B100)的示例,並使用單元格左邊一列中的文件名(如此來自列A),並將圖像的大小以適應小區內B列

Sub InsertPic() 
Dim pic As String 'file path of pic 
Dim myPicture As Picture 'embedded pic 
Dim rng As Range 'range over which we will iterate 
Dim cl As Range 'iterator 

Set rng = Range("B7:B7") 
For Each cl In rng 
    pic = cl.Offset(0, -1) 

     Set myPicture = ActiveSheet.Pictures.Insert(pic) 
     ' 
     With myPicture 
      .ShapeRange.LockAspectRatio = msoFalse 
      .Width = cl.Width 
      .Height = cl.Height 
      .Top = Rows(cl.Row).Top 
      .Left = Columns(cl.Column).Left 
     End With 
     ' 

Next 

End Sub 

沒有錯誤處理在此代碼佔無效的文件名,你可能會想補充一點。

+0

我嘗試過使用不同的URL,但是我必須使用的不起作用。我得到1004:插入屬性od圖片對象不能被分配(翻譯)。有任何想法嗎?這裏是我的URL看起來如何: https://imissit.blob.core.windows.net/iris/596480cf967e0c990c37fba3725ada0c/0a78efee-493c-40df-9202-6de8d5b769f2/codes/qsw.png – 4ndro1d 2016-11-29 22:22:22

+0

@ 4ndro1d你應該[問你自己問題](http://stackoverflow.com/questions/ask)。記住這樣做時要顯示您正在使用的代碼,並詳細描述您的問題。乾杯。 – 2016-11-30 11:31:48

+0

@ 4ndro1d這裏有一個提示,雖然:你不能使用上面的方法提供一個圖像的URL路徑,你首先需要下載文件。這也可以用VBA完成。試着弄清楚(關於這個話題還有其他的Q),並問你自己的問題,如果你卡住了。 – 2016-11-30 11:32:42