Re: [算表] VBA可以抓到圖檔的像素值嗎?

看板Office作者 (CC)時間2年前 (2022/04/20 10:56), 2年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
舊文重問 問題同以下原PO 有人知道當年的推文解法是什麼嗎? ※ 引述《foolkids (翼をください)》之銘言: 軟體:Office Excel 版本:2010 網路上看到這篇:http://goo.gl/iDNQPA (註解內插入圖片) 功能實現的方式是將註解的背景填滿效果改成圖片, 這樣滑鼠移過去顯示註解時就會顯示背景圖片,相當方便的應用。 但是有個問題是:註解的框架大小會影響圖片的顯示,兩種狀況為── 1. 鎖定圖片比率:圖片會依據框架大小自動調整,但長寬比例會跑掉 2. 不鎖定圖片比率:圖片會依據框架大小,自動取長或寬來顯示,但 框架比例跟圖片比例不符時,圖片會少一點(長或寬) 另有個選項"旋轉填滿圖案效果",這個選項看不出功用,有前輩知道嗎? 理想上是希望可以在VBA批次將背景填滿的時候順便依據圖片的像素比例 去調整註解的框架比例,但是苦查不到這樣的指令, 不曉得有前輩知道 如何使用VBA得知圖片的像素比例 嗎? -- ┌─────────────────────────────┐ │就這樣,終於到了啟程的日子。 │ │和來機場送行的朋友們說著玩笑話,其實內心恍恍惚惚像在作夢。│ │也似乎是因為,為了走到「出發」這一步,耗盡了全部心力。 │ └─────────────────石田裕輔《不去會死!》─┘ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.249.149.121 ※ 文章網址: http://www.ptt.cc/bbs/Office/M.1409283920.A.343.html

08/29 16:28,
CreateObject("Shell.Application").Namespace(路徑).
08/29 16:28

08/29 16:28,
.Parsename(檔名).ExtendedProperty("Dimensions")
08/29 16:28

08/29 22:44,
謝謝蘇大! 我去研究看看
08/29 22:44
實作之後發現:我必須先設定一個物件變數才可以取得尺寸,所以會變成 Set obj = CreateObject("Shell.Application") D = obj.Namespace("路徑").ParseName("檔名").ExtendedProperty("Dimensions") MsgBox D 會得到 ?720 x 480? 如果直接寫在同一行會跳錯誤,不知道是否是我操作有誤? ※ 編輯: foolkids (114.39.139.88), 08/29/2014 23:00:18

08/29 23:04,
08/29 23:04
奇怪! 結果又可以了!! 我剛剛不知道犯了什麼詭異的錯誤... 謝謝蘇大!! ※ 編輯: foolkids (114.39.139.88), 08/29/2014 23:28:13 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.72.124.31 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1650423391.A.3BD.html 自己回答 已解決 Dim E As Variant With Application.FileDialog(msoFileDialogOpen) .Show For Each E In .SelectedItems '路徑位置 Dim w As Integer Dim h As Integer ActiveSheet.Pictures.insert(E).Select '插入圖片選中 w = Selection.Width 'w值等於選中圖片的 寬度 h = Selection.Height 'h值等於選中圖片的 寬度 Selection.Delete '清除選中圖片 ※ 編輯: cctu (211.72.124.31 臺灣), 04/20/2022 15:16:00
文章代碼(AID): #1YNtPVEz (Office)
文章代碼(AID): #1YNtPVEz (Office)