背景・目的
下図で選択中の図形(高さ1 cm×幅1 cm)のサイズを、マクロで表示させることを考えます。

そのようなマクロは、単体では使いどころがないですが、意外と応用が効きます。
たとえば、
- シート内の複数の図形やグラフのサイズを揃える
- セルの選択範囲に合わせたサイズのテキストボックスを自動作成する
などといったマクロのパーツとして使えます。
事前検証
図形を選択した状態で、次のコードを実行します。
Sub サイズ表示1()
Dim H, W As Variant
With Selection
H = .Height '高さ
W = .Width '幅
End With
MsgBox "高さ" & H & "×幅" & W
End Sub
すると、次のメッセージボックスが表示されます。

cmでは表示されず、よくわからない数値が出てきてしまいます。
これは、「ポイント」という単位で表示されているので、cm(センチ)に変換する必要があるのです。
1 cm=1÷2.54×72ポイントなので、1ポイント=1×2.54÷72 cmです。
つまり、上で表示された数値×2.54÷72すれば、cmに換算できます。
方法
以上を踏まえて、以下のコードを書きます。
Sub サイズ表示2()
Dim H, W As Variant
With Selection
H = .Height '高さ
W = .Width '幅
End With
H = cm変換(H)
W = cm変換(W)
MsgBox "高さ" & H & "cm×幅" & W & "cm"
End Sub
Function cm変換(ポイント As Variant) As Variant
cm変換 = WorksheetFunction.Round(ポイント * 2.54 / 72, 2)
End Function
これを実行すると、下のメッセージが表示され、うまくいったことがわかります。

四角形のサイズを適当に変えて実行しても、ちゃんと表示されています。

投稿時の環境
- Windows11 Home Ver. 24H2
- Excel for Microsoft 365 Ver. 2505