彰化一整天的論壇

 找回密碼
 立即註冊
搜索
查看: 80|回復: 7

vba插入指定圖片

[複製鏈接]
發表於 2017-12-1 10:58:25 | 顯示全部樓層 |閱讀模式
本帖最後由 Bonnie 於 2017-12-1 11:21 編輯

老師您好,因工作需求需要將大量圖片插入至EXCEL表單中
我在網路上找到了這份VBA我想將我的圖片放置在E欄:E1 E2 E3 E4 etc

  1. Sub Macro1()

  2. Index = 4
  3. While (Len(Cells(Index, 2)) > 0)
  4.     Cells(Index, 3).Select
  5.     ActiveSheet.Pictures.Insert( _
  6.         "圖片位置" & Cells(Index, 2)).Select
  7.     Selection.ShapeRange.LockAspectRatio = msoTrue
  8.     Selection.ShapeRange.Height = 130.5
  9.     Selection.ShapeRange.Width = 174#
  10.     Selection.ShapeRange.Rotation = 0#
  11.     Index = Index + 1

  12. Wend

  13.     MsgBox ("完成!")

  14. End Sub
複製代碼


輸入好圖片並將要插入圖片欄位改成圖片名稱
但是執行之後出現錯誤訊息

執行階段錯誤 '1004':
無法取得類別Pictures的Insert屬性

未命名.png

不知道是否哪裡有錯誤呢?


回復

使用道具 舉報

發表於 2017-12-1 13:31:35 | 顯示全部樓層
您好,
     方便上傳您的excel檔案嗎?
回復 支持 反對

使用道具 舉報

 樓主| 發表於 2017-12-1 14:17:27 | 顯示全部樓層
imingho 發表於 2017-12-1 13:31
您好,
     方便上傳您的excel檔案嗎?



您好,已將excel檔案上傳
麻煩您,謝謝了

圖片插入測試.xlsm

15.81 KB, 下載次數: 1

回復 支持 反對

使用道具 舉報

發表於 2017-12-1 14:45:06 | 顯示全部樓層
本帖最後由 imingho 於 2017-12-1 14:48 編輯
Bonnie 發表於 2017-12-1 14:17
您好,已將excel檔案上傳
麻煩您,謝謝了

您程式碼寫錯了.我幫您更新了.您再執行看看.
insert_picutre_name_01.jpg

1.index要從2開始,圖片是cells(index,5)

  1. Sub Macro1()

  2.     Index = 2
  3.     While (Len(Cells(Index, 5)) > 0)
  4.         Cells(Index, 5).Select
  5.         ActiveSheet.Pictures.Insert( _
  6.             "C:\Users\SJ-ASUS-X751L\Desktop\插入圖片\" & Cells(Index, 5)).Select
  7.         Selection.ShapeRange.LockAspectRatio = msoTue
  8.         Selection.ShapeRange.Height = 130.5
  9.         Selection.ShapeRange.Width = 174#
  10.         Selection.ShapeRange.Rotation = 0#
  11.         Index = Index + 1
  12.    
  13.     Wend

  14.     MsgBox ("完成!")

  15. End Sub
複製代碼

圖片插入測試_20171201.xlsm

15.87 KB, 下載次數: 0

售價: 2 金錢  [記錄]  [購買]

回復 支持 反對

使用道具 舉報

 樓主| 發表於 2017-12-1 15:21:35 | 顯示全部樓層
imingho 發表於 2017-12-1 14:45
您程式碼寫錯了.我幫您更新了.您再執行看看.

1.index要從2開始,圖片是cells(index,5)

謝謝老師
目前已經能插入圖片,不過是全部都在同一個地方
而且也沒有在指定的欄位上
回復 支持 反對

使用道具 舉報

發表於 2017-12-1 15:41:18 | 顯示全部樓層
本帖最後由 imingho 於 2017-12-1 15:57 編輯
Bonnie 發表於 2017-12-1 15:21
謝謝老師
目前已經能插入圖片,不過是全部都在同一個地方
而且也沒有在指定的欄位上 ...

您把列高調大,圖片就會分開.若還是不懂,可以參考.
http://download.bestdaylong.com/f150.htm
將多個圖片插入Excel並調整大小(Excel2007)
回復 支持 反對

使用道具 舉報

 樓主| 發表於 2017-12-4 09:51:37 | 顯示全部樓層
本帖最後由 Bonnie 於 2017-12-4 11:03 編輯

老師早安是否能有抓儲存格的內容然後將指定途徑內的圖片放在指定儲存格內的作法
回復 支持 反對

使用道具 舉報

發表於 2017-12-4 11:42:34 | 顯示全部樓層
Bonnie 發表於 2017-12-4 09:51
老師早安是否能有抓儲存格的內容然後將指定途徑內的圖片放在指定儲存格內的作法
...

您只要將
  1.         ActiveSheet.Pictures.Insert( _
  2.             "C:\Users\SJ-ASUS-X751L\Desktop\插入圖片\" & Cells(Index, 5)).Select
複製代碼

中的"C:\Users\SJ-ASUS-X751L\Desktop\插入圖片\"
改成您要的儲存格,例如:A1
  1.         ActiveSheet.Pictures.Insert( _
  2.             range("a1").value & Cells(Index, 5)).Select
複製代碼

回復 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

 ㄚ母滴雞湯
 員林香純滴雞精

Archiver|手機版|小黑屋|彰化一整天的論壇(Excel,Office)  |网站地图

GMT+8, 2017-12-12 14:30 , Processed in 0.046930 second(s), 16 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表