2012-09-05 143 views
4

在我一直在構建一些VBA代碼的Word文檔中,我需要能夠在用戶窗體上顯示圖像,並調整用戶窗體的大小以適應所呈現的任何圖像。在VBA中獲取圖像大小?

我感到很困惑,當我試圖像這樣在立即盒(圖像文件實際上是在寬度只有675像素):

? LoadPicture("C:\Users\arose\Desktop\Security Control Doc\Images\AC1.bmp").Width 
    17859 

後來我發現,這個使用一些單位由於VBA除像素之外。 Tw或類似的東西。但我真的必須像素的圖像大小,所以我打亂周圍,發現轉換系數大約是什麼,我使用這個:

Function TwipsToPixels(Twips As Long) As Long 

    TwipsToPixels = Twips/25.477 

End Function 

這幫助,但不是特別準確。所以我的問題是,有沒有人有更精確和更精確的方式獲取VBA中的圖像大小?

+0

*如何將緹轉換爲像素* http://support.microsoft.com/default.aspx?scid=kb;en-us;94927 –

回答

7

VBA中的默認測量單位是:屏幕無關的測量單位,等於一個點的1/20或1/1,440英寸。釐米裏有567緹。

像素是屏幕相關的單位,所以這兩個功能/屬性TwipsPerPixelXTwipsPerPixelY應該做的伎倆。

+0

This Works!非常感謝! –