やり方がよくわからないので自己流でやってみた。
------それまで試した事------
・ボタンの大きさ・位置が変わるのは、excelのバグのようだ
・効果的な、予防法は無いようだ。
(ボタンをグループ化する、コンパイルする、bookの全てのシートの大きさを100%にする)
・あるサイトでformのボタンの大きさを変えるマクロがあったので参考にした。
(コマンドボタンの標題を改行し、サイズを自動調整する)
-----内容-----
・ボタンの大きさ(width)と左からの位置(left)が勝手に変わるので指定しなおす。
・垂直位置(top)など他の部分は変わらないので、特に何もしない。
・数値は、ボタンのプロパティの数値と実際の数値にずれがあるので、cut&tryで修正していく。(単位が違うため?)
・数値はダブルクオーテーションで囲む
-----手順----
①マクロの記録で、記録開始し、何もせずすぐに停止する。すると、標準モジュールに空のマクロが登録される。下の例では、Module3のMacro7()、Ctrl+zで登録された。
Sub Macro7()
' Macro7 Macro
' Keyboard Shortcut: Ctrl+z
End Sub
②開発→デザインモードをクリックしてから、Visual Basic→標準モジュール→Module3の所をダブルクリックして、入力画面にする。
③ボタンがsheet1にあるとして、「Sub」と「End Sub」の間に
-------------------↓ここから
Sheet1.CommandButton1.Width = "100"
Sheet1.CommandButton1.Left = "425"
Sheet1.CommandButton2.Width = "100"
Sheet1.CommandButton2.Left = "425"
Sheet1.CommandButton3.Width = "100"
Sheet1.CommandButton3.Left = "425"
Sheet1.CommandButton4.Width = "100"
Sheet1.CommandButton4.Left = "425"
Sheet1.CommandButton5.Width = "100"
Sheet1.CommandButton5.Left = "425"
Sheet1.CommandButton6.Width = "100"
Sheet1.CommandButton6.Left = "425"
Sheet1.CommandButton7.Width = "100"
Sheet1.CommandButton7.Left = "425"
Sheet1.CommandButton8.Width = "100"
Sheet1.CommandButton8.Left = "425"
Sheet1.CommandButton9.Width = "100"
Sheet1.CommandButton9.Left = "425"
Sheet1.CommandButton10.Width = "100"
Sheet1.CommandButton10.Left = "425"
Sheet1.OptionButton1.Width = "70"
Sheet1.OptionButton1.Left = "145"
Sheet1.OptionButton2.Width = "70"
Sheet1.OptionButton2.Left = "145"
Sheet1.OptionButton3.Width = "70"
Sheet1.OptionButton3.Left = "145"
------------------↑ここまで
を書き込む
(コマンドボタンやラジオボタンの数やあり/なしに応じて書き直す)
・ボタンが見えなくなったり、位置・大きさが変になった時、Ctrl+zで元の位置に戻る。
・ボタンは、グループ化してあってもOK。
0 件のコメント:
コメントを投稿