Excel:在不同電腦上開啟相同檔案時,VBA 會報告不同的形狀寬度

Excel:在不同電腦上開啟相同檔案時,VBA 會報告不同的形狀寬度

我很撓頭為什麼。兩台電腦都執行 Win7 pro 64 位,以及相同版本的 Excel(版本 1708,內部版本 8431.2236)。電子表格中插入了 8 張影像。這是我用來報告圖像寬度的:

    For Each p In ActiveSheet.Shapes
        MsgBox ("TL row: " & p.TopLeftCell.Row & ", TL column: " & p.TopLeftCell.Column & " ,image width: " & p.Width)

這是我在兩台電腦上得到的結果:

    computer 1                        computer 2
    14, 1, 72                         14, 1, 73.2
    157, 4, 379.5                     157, 4, 386.4
    182, 4, 379.5                     182, 4, 386.4
    208, 4, 379.5                     208, 4, 386.4
    234, 4, 379.5                     234, 4, 386.4
    260, 4, 379.5                     260, 4, 386.4
    286, 4, 379.5                     286, 4, 386.4
    418, 5, 198                       418, 5, 201.6

我知道我的模糊問題可能沒有「答案」。然而,任何線索/想法將不勝感激!

答案1

A觀點是一種抽象測量,試圖以更真實的指標規範像素和縮放。 (請參閱下面的更新 1)

A像素是螢幕上的物理結構,具有明確且真實的尺寸和形狀。

縮放是一種使應用程式適合原始解析度首選 LCD 上可用尺寸的方法。

您遇到的問題是,Excel 可能會使用點來確定給定物件的大小,並且在具有不同解析度和不同縮放設定的不同顯示器上,點的大小可能會有所不同,因此圖表或物件的佈局可能會有所不同也會出現波動。

有多種方法可以使用經驗測量來定義 Excel 中元素的大小,但這些方法可能只是逆轉問題,而不是解決問題。

更新1:我可能對點的看法是錯的。 Excel 似乎使用「PostScript」點,這是 1/72 英吋的經驗測量值。點以我上面描述的方式在其他螢幕設計系統中使用。不過,根本問題實際上是相同的:Excel 正在嘗試在不同的螢幕、解析度和縮放比例下盡最大努力使一切正常工作。

如需補充閱讀:
https://forums.techguy.org/threads/units-used-in-excel.178564/
如何在Excel中使單元格成為完美的正方形?
http://dailydoseofexcel.com/archives/2004/06/01/column-widths-in-points/

相關內容