はじめに
シェイプを思い通りの位置にセットするためのツールを作ってみました。
結構便利なので使ってみてください。
ユーザーフォームで操作します。モードレスなのでシート上の作業ができます。
以下のファイルをダウンロードして下のチュートリアルで試してみてください。
ユーザーフォームの使い方

ユーザーフォームを出すと、下に3つのボタンがあります。
「Read」ボタンで、選択したシェイプの情報が上に表示されます。
Nameは、シェイプ名です。複数選択した場合は、「(複数選択中)1番目の値」と表示され、最初に選択したシェイプの値が表示されます。
Left、Top、Width、Heightはそれぞれ 左、上、幅、高さの値です。
Rotateは回転角度となります。
H.Flip, V,Flipは水平軸の反転と垂直軸の反転です。
※反転に関しては、こちらを参照してください。
それぞれの項目にセットしたい値を入力して、チェックボックスにチェックを入れて「Set」ボタンを押すとシェイプの位置が更新されます。
「Close」ボタンはユーザーフォームを閉じます。
チュートリアル
まずは、図のような円が4つある状態で位置やサイズを変更してみましょう。

複数選択して大きさを変更
4つの円をShftキーを押して全て選択してください。
その後、「Read」ボタンを押します。
以下のようにLeft、Top、Width、Height、、と値が表示されます。
これは一番最初に選択したシェイプの値です。

Widthと、Heightの値が異なっているので真円ではないようなので、
Widthと、Heightを 50 にしてチェックを入れて「Set」ボタンを押します。

これで4つとも直径50の真円になりました。
高さを揃える
4つの円の高さを揃えます。左から2番目の円が一番高いので、そこに合わせてみましょう。
一旦、選択を解除するためにシート上をクリックし、左から2番目の円をクリックして選択した後で、
他の円をShftキーを押しながらクリックして「Read」ボタンを押します。

左から2番目の Top は 66.5 のようです。
Top にチェックを入れ、テキストボックスに 66.5 と入力して、「Set」ボタンを押します。

これですべての高さが揃いました。
間隔を均等に揃える
4つの円の間隔を揃えるには、1つずつ Left の値を変更していく必要があります。
まず一番左の円をクリックして「Read」を押し、Left の値を調べます。
次に、左から2番目をクリックして「Read」を押して、同じように Left の値を見てみましょう。
Left は、51, 135 となりました。間隔は 84 あるので、左から3番目と4番目は、それぞれ 219, 303 とすれば良いでしょう。
左から3番目と4番目の Left の値を、それぞれ変更します。

これで、4つの円の大きさと高さ、間隔を揃える事ができました。
このツールでは、チェックを入れた項目を数値で位置変更できます。
複数選択した場合は、最初に選択したシェイプ値が表示されます。
尚、Flip(反転)に関してはチェックを入れれば False/True を入替える事ができます。
インストール方法
ご自身のExcelファイルで使用したい場合は、フォームごとドラッグしてしまう方法が簡単です。
上記でダウンロードした ShapeChange.xlsm とインストールしたいExcelファイルを2つ開きます。
VBEのプロジェクトウインドウで UserShapeSizeChange をドラッグしてインストールしたいExcelファイルの方にドラッグします。
後は、標準モジュールに以下のコードを書いて、ボタンなどから呼び出すようにすれば良いでしょう。
Sub testShowUserForm()
UserShapeSizeChange.Show
End Sub
お役に立てば幸いです。
コメント