Home » エクセルマクロ・Excel VBAの使い方 » Shapesコレクション・Shapeオブジェクト » ScaleWidth・ScaleHeightの引数

動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2110 ビルド14527.20276 Microsoft Store)

「ShapeRange.ScaleWidth マクロ」
という検索キーワードでアクセスがありました。

Excelで選択されているShapeの横幅を、

上図のような、[図形の書式設定]作業ウィンドウ-[図形のオプション]-[サイズとプロパティ]-[幅の倍率]欄を使って拡大する操作をマクロ記録すると、


Selection.ShapeRange.ScaleWidth 1.5, msoFalse, msoScaleFromTopLeft

といったコードが自動的に作られます。

[スポンサードリンク]

特にこの引数について調べていらしたのではないかと、想像しています。

ScaleWidth・ScaleHeightメソッドの引数の意味

ShapeオブジェクトやShapeRangeオブジェクトに用意されている、ScaleWidthメソッド・ScaleHeightメソッドには、3つの引数を指定できます。

3つの引数のうち、第1引数Factorと、第2引数RelativeToOriginalSizeの2つが必須です。

引数Factorは、難しくありません。倍率です。

引数RelativeToOriginalSizeには、図形の場合はmsoFalseを指定するしかありません。画像やOLEオブジェクトの場合に、引数RelativeToOriginalSizeにmsoTrueを指定すると元々のサイズを基準に、msoFalseを指定すると現在のサイズを基準に拡大/縮小が行われます。

引数Scaleには、(オブジェクトブラウザーからは読み取れませんが)MsoScaleFrom列挙型の定数を指定できます。

引数RelativeToOriginalSizeが「As MsoTriState」と定義されているのですから、引数Scaleも「As MsoScaleFrom」と定義しておいてくれていれば良かったのに、と私は感じます。

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » Shapesコレクション・Shapeオブジェクト » ScaleWidth・ScaleHeightの引数

Home » エクセルマクロ・Excel VBAの使い方 » Shapesコレクション・Shapeオブジェクト » ScaleWidth・ScaleHeightの引数

「Shapesコレクション・Shapeオブジェクト」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.