フォームを表示させて作業していると、時々サイズを変更させて作業をしやすくしたいと思うことがあります。
ネットで調べるとフォームのサイズ変更は、簡単にはできそうになかったので、
・・・こんなやつ
知っている知識のみでフォームのサイズ変更ができるようにしてみました。
以前に作成した、ミニツールのテキストエディタを利用します。
------------------------------------------------
外観
赤枠のスピンボタンを追加しました。
スピンボタンのオブジェクト名は以下のようにしました。
spnWidthUp・・・幅増加
spnWidthDown・・・幅減少
spnHeightUp・・・高さ増加
spnHeightDown・・・高さ減少
spnBothWHUp・・・幅/高さ両方増加
spnBothWHDown・・・幅/高さ両方減少
※ちなみに・・・
Width の発音は「ウィズ」(Withとほぼ一緒でネイティブでないと違いが判らないかも)
Height の発音は「ハイト」(ヘイトではない)
スピンボタンを設定したあと、ダブルクリックしてコードを書くところを開くと、
最初は「Change」 になっているので、右側のドロップボックスから
SpinDown SpinUp に変更してそれぞれにコードを書いていきます。
**********************************************
マクロ
高さ サイズダウン
Private Sub spnHeight_SpinDown()
If frmCellTextEditor.Height < 209.4 Then 'オリジナルのサイズより小さくさせない
Else ’10ptずつ減少させる
frmCellTextEditor.Height = frmCellTextEditor.Height - 10
txtEditWindow.Height = txtEditWindow.Height - 10
End If
End Sub
------------------------------------------------
高さ サイズアップ
’10ptずつ増加させる 上限を設定しなくても問題ないでしょう
Private Sub spnHeight_SpinUp()
frmCellTextEditor.Height = frmCellTextEditor.Height + 10
txtEditWindow.Height = txtEditWindow.Height + 10
End Sub
------------------------------------------------
幅 サイズダウン
Private Sub spnWidth_SpinDown()
If frmCellTextEditor.Width - 10 < 379.2 Then 'オリジナルのサイズより小さくさせない
Else
frmCellTextEditor.Width = frmCellTextEditor.Width - 10
txtEditWindow.Width = txtEditWindow.Width - 10
End If
End Sub
------------------------------------------------
幅 サイズアップ
Private Sub spnWidth_SpinUp()
frmCellTextEditor.Width = frmCellTextEditor.Width + 10
txtEditWindow.Width = txtEditWindow.Width + 10
End Sub
------------------------------------------------
幅/高さ 両方サイズダウン
'上記のマクロを呼び出せばよい
Private Sub spnBothWH_SpinDown()
Call spnHeight_SpinDown
Call spnWidth_SpinDown
End Sub
------------------------------------------------
幅/高さ 両方サイズアップ
Private Sub spnBothWH_SpinUp()
Call spnHeight_SpinUp
Call spnWidth_SpinUp
End Sub
------------------------------------------------
試しに10pt の決め打ちで作成してみたところ、ちょうどよかったので、
そのまま採用です。
テキストボックスもつけ足して、任意の数値分サイズを変更させる
ってのも考えましたが、面倒なので今回はやめました。
必要になったら、
frmCellTextEditor.Width = frmCellTextEditor.Width - (テキストボックスの値)
ってすればよいのですから。
_/_/_/_/_/_/_/_/_/_/_/
個人用マクロブックについてはこちら
リボンに登録についてはこちら
_/_/_/_/_/_/_/_/_/_/_/_/_/_/