コントロールのサイズ(幅と高さ)を設定する(Width,Heightプロパティ)
ユーザーフォームに設置したコントロールのサイズを設定するには Width プロパティと Height プロパティを使用します。コントロールの幅については Width プロパティ、高さについては Heightプロパティで設定します。ここでは Excel のユーザーフォームで Width プロパティおよび Height プロパティを使ってコントロールのサイズを設定する方法について解説します。
(Last modified: )
コントロールのサイズを設定する
コントロールのサイズを設定するには Width
プロパティと Height
プロパティを使用します。例えば次の位置に設置したコマンドボタンの幅を表す Width
プロパティおよび高さを表す Height
プロパティの値はそれぞれ 126 と 30 に設定されています。
幅をを設定するには Width
プロパティ、高さを設定するには Height
プロパティをクリックし、値を直接編集してください。単位はポイントです。
例えば Width
プロパティの値を 180 に変更してみます。するとコマンドボタンの幅が変更されました。
今度は Height
プロパティの値を 60 に変更してみます。するとコマンドボタンラベルの高さが変更されました。
このように Width
プロパティおよび Height
プロパティの値を変更することで、コントロールのサイズを設定することができます。
VBAのプログラムの中でWidthプロパティを設定する
プロパティウィンドウを使って Width
プロパティや Height
プロパティの値を変更する代わりに、 VBA のコードを記述して Width
プロパティや Height
プロパティの値を変更することもできます。
プログラムの中で Width
プロパティを設定する場合は次の書式を使用します。
オブジェクト.Width [= Single ]
対象のオブジェクトの Width
プロパティに対して、コントロールの幅を単精度浮動小数点型の数値で代入します。単位はポイントです。
プログラムの中で Height
プロパティを設定する場合は次の書式を使用します。
オブジェクト.Height [= Single ]
対象のオブジェクトの Height
プロパティに対して、コントロールの高さを単精度浮動小数点型の数値で代入します。単位はポイントです。
簡単なサンプルで試してみます。ユーザーフォームが表示される前に発生する Initialize
イベントに対するイベントプロシージャを作成し、その中で Width
プロパティおよび Height
プロパティの値を設定します。ユーザーフォームが表示される前にコントロールのプロパティの設定が行われます。
※ Initialize
イベントに対するイベントプロシージャの使い方については「ユーザーフォームを表示する直前に発生するイベント(Initializeイベント)」を参照されてください。
ユーザーフォームのコントロールが何もないところをダブルクリックしてください。
ユーザーフォームの規定のイベントである Click
イベントに対するイベントプロシージャが表示されます。
今回はユーザーフォームの Initialize
イベントに対するイベントプロシージャを使用するので、コードウィンドウで次のようにイベントプロシージャを追加で記述してください。
Private Sub UserForm_Initialize() Label1.Width = 180 Label1.BackColor = RGB(220, 220, 0) CommandButton1.Height = 60 End Sub
これでコードの記述は完了です。では実際に試してみます。「Sub/ユーザーフォームの実行」をクリックしてください。
ユーザーフォームが表示されました。追加されているラベルの幅(と背景色)とコマンドボタンの高さがそれぞれ変更されていることが確認できます。
このように VBA のプログラムの中で Width
プロパティおよび Height
プロパティの値を変更することができました。
-- --
Excel のユーザーフォームで Width プロパティおよび Height プロパティを使ってコントロールのサイズを設定する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。