彰化一整天的論壇

 找回密碼
 立即註冊
查看: 2767|回復: 9

想請教一下 自動貼圖的 VBA 問題

[複製鏈接]
發表於 2014-6-20 11:10:54 | 顯示全部樓層 |閱讀模式
我的需求是
例如 B3要貼圖 他會自己去抓 A3的 數值 .JPG 當檔名
一直延續下去 直到空白格為止

但我只爬到 單一個做法....又參考很多 多貼圖一直失敗

picname = [a3] & ".jpg"  '插入的圖片名稱
    Mypath = "C:\"
    Set MyPic = ActiveSheet.Pictures.Insert(Mypath & picname)
    With MyPic
        .ShapeRange.LockAspectRatio = msoFalse
        .Left = [b3].Left
        .Top = [b3].Top
        .Width = [b3].Width
        .Height = [b3].Height
    End With


這個該怎麼改回比較好呢???
回復

使用道具 舉報

 樓主| 發表於 2014-6-20 12:36:15 | 顯示全部樓層
Sub Macro1()
Index = 4
While (Len(Cells(Index, 2)) > 0)
     Cells(Index, 3).Select
     ActiveSheet.Pictures.Insert( _
         "C:\" & Cells(Index, 2)).Select
     Selection.ShapeRange.LockAspectRatio = msoTrue
     Selection.ShapeRange.Height = 130.5
     Selection.ShapeRange.Width = 174#
     Selection.ShapeRange.Rotation = 0#
     Index = Index + 1
Wend
     MsgBox ("完成!")
End Sub

網路上找到這個...但完全無法執行
說     
ActiveSheet.Pictures.Insert( _
         "C:\" & Cells(Index, 2)).Select
錯誤

回復 支持 反對

使用道具 舉報

發表於 2014-6-20 13:07:10 | 顯示全部樓層
a3848654 發表於 2014-6-20 12:36
Sub Macro1()
Index = 4
While (Len(Cells(Index, 2)) > 0)

您好,
     您可以上傳Excel檔案跟錯誤畫面嗎?
回復 支持 反對

使用道具 舉報

 樓主| 發表於 2014-6-21 06:23:17 | 顯示全部樓層
imingho 發表於 2014-6-20 13:07
您好,
     您可以上傳Excel檔案跟錯誤畫面嗎?

板大你好!
這是執行畫面和程式

我用的作業系統是 WIN7
OFFICE 2010  

感謝你!!!
1.JPG
2.JPG

活頁簿1.xlsm

15.48 KB, 下載次數: 154

自動貼圖

回復 支持 反對

使用道具 舉報

發表於 2014-6-21 09:58:09 | 顯示全部樓層
a3848654 發表於 2014-6-21 06:23
板大你好!
這是執行畫面和程式

您好,
      您少了副檔名.jpg.
  1. Sub 巨集1()

  2.     Index = 4
  3.     While (Len(Cells(Index, 2)) > 0)
  4.          Cells(Index, 3).Select
  5.          ActiveSheet.Pictures.Insert( _
  6.              "C:\" & Cells(Index, 2) & ".jpg").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
複製代碼



picture.xlsm

15.49 KB, 下載次數: 8

售價: 1 金錢  [記錄]

回復 支持 反對

使用道具 舉報

 樓主| 發表於 2014-6-21 10:33:19 | 顯示全部樓層
ㄏㄏ 原來是這樣啊.... 感謝版大
想請問版大 我如何讓圖片 直接符合 儲存格大小 ,編排時圖片跟這儲存格跑呢??
回復 支持 反對

使用道具 舉報

發表於 2014-6-21 19:12:06 | 顯示全部樓層
本帖最後由 imingho 於 2014-6-21 19:15 編輯
a3848654 發表於 2014-6-21 10:33
ㄏㄏ 原來是這樣啊.... 感謝版大
想請問版大 我如何讓圖片 直接符合 儲存格大小 ,編排時圖片跟這儲存格跑呢 ...
  1. Sub 巨集1()

  2.     Index = 4
  3.     While (Len(Cells(Index, 2)) > 0)
  4.          Cells(Index, 3).Select
  5.          ActiveSheet.Pictures.Insert( _
  6.              "C:\" & Cells(Index, 2) & ".jpg").Select
  7.          Selection.ShapeRange.LockAspectRatio = msoFalse
  8.          Selection.ShapeRange.Height = Cells(Index, 3).Height
  9.          Selection.ShapeRange.Width = Cells(Index, 3).Width
  10.          Selection.ShapeRange.Rotation = 0#
  11.          Index = Index + 1
  12.     Wend
  13.      MsgBox ("完成!")
  14. End Sub
複製代碼

picture.xlsm

16.87 KB, 下載次數: 8

售價: 1 金錢  [記錄]

回復 支持 反對

使用道具 舉報

 樓主| 發表於 2014-6-22 18:26:09 | 顯示全部樓層

原來可以這樣用指令
遇到一個問題 檔案路徑 我用 c:\123 卻無法執行 在 c:\ 卻可以正常
d:\ 也正常 只要放在資料夾內就錯誤

想請問 這是為什麼??  
回復 支持 反對

使用道具 舉報

發表於 2014-6-23 09:08:41 | 顯示全部樓層
a3848654 發表於 2014-6-22 18:26
原來可以這樣用指令
遇到一個問題 檔案路徑 我用 c:\123 卻無法執行 在 c:\ 卻可以正常
d:\ 也正常 只要 ...

路徑最後要有\,您的是少了一個\,c:\123\,這樣就可以.
回復 支持 反對

使用道具 舉報

 樓主| 發表於 2014-6-23 09:27:27 | 顯示全部樓層
imingho 發表於 2014-6-23 09:08
路徑最後要有\,您的是少了一個\,c:\123\,這樣就可以.

了解~~ 忽略掉這小細節.....感謝提點
回復 支持 反對

使用道具 舉報

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

本版積分規則

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

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

GMT+8, 2019-8-24 17:52 , Processed in 0.200854 second(s), 33 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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