Re: [算表] VBA可以抓到圖檔的像素值嗎?
舊文重問
問題同以下原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,
08/29 16:28
→
08/29 16:28,
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
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):