コントロールのサイズ(幅と高さ)を設定する(Width,Heightプロパティ)

ユーザーフォームに設置したコントロールのサイズを設定するには Width プロパティと Height プロパティを使用します。コントロールの幅については Width プロパティ、高さについては Heightプロパティで設定します。ここでは Excel のユーザーフォームで Width プロパティおよび Height プロパティを使ってコントロールのサイズを設定する方法について解説します。

(Last modified: )

コントロールのサイズを設定する

コントロールのサイズを設定するには Width プロパティと Height プロパティを使用します。例えば次の位置に設置したコマンドボタンの幅を表す Width プロパティおよび高さを表す Heightプロパティの値はそれぞれ 126 と 30 に設定されています。

コントロールのサイズを設定する(1)

コントロールのサイズを設定する(2)

幅をを設定するには Width プロパティ、高さを設定するには Heightプロパティをクリックし、値を直接編集してください。単位はポイントです。

例えば Width プロパティの値を 180 に変更してみます。するとコマンドボタンの幅が変更されました。

コントロールのサイズを設定する(3)

今度は Height プロパティの値を 60 に変更してみます。するとコマンドボタンラベルの高さが変更されました。

コントロールのサイズを設定する(4)

このように Width プロパティおよび Height プロパティの値を変更することで、コントロールのサイズを設定することができます。

VBAのプログラムの中でWidthプロパティを設定する

プロパティウィンドウを使って Width プロパティや Height プロパティの値を変更する代わりに、 VBA のコードを記述して Width プロパティや Height プロパティの値を変更することもできます。

プログラムの中で Width プロパティを設定する場合は次の書式を使用します。

オブジェクト.Width [= Single ]

対象のオブジェクトの Width プロパティに対して、コントロールの幅を単精度浮動小数点型の数値で代入します。単位はポイントです。

プログラムの中で Height プロパティを設定する場合は次の書式を使用します。

オブジェクト.Height [= Single ]

対象のオブジェクトの Height プロパティに対して、コントロールの高さを単精度浮動小数点型の数値で代入します。単位はポイントです。

サンプルコード

簡単なサンプルで試してみます。ユーザーフォームが表示される前に発生する Initialize イベントに対するイベントプロシージャを作成し、その中で Width プロパティおよび Height プロパティの値を設定します。ユーザーフォームが表示される前にコントロールのプロパティの設定が行われます。

Initialize イベントに対するイベントプロシージャの使い方については「ユーザーフォームを表示する直前に発生するイベント(Initializeイベント)」を参照されてください。

ユーザーフォームのコントロールが何もないところをダブルクリックしてください。

VBAのプログラムの中でWidthプロパティを設定する(1)

ユーザーフォームの規定のイベントである Click イベントに対するイベントプロシージャが表示されます。

VBAのプログラムの中でWidthプロパティを設定する(2)

今回はユーザーフォームの Initialize イベントに対するイベントプロシージャを使用するので、コードウィンドウで次のようにイベントプロシージャを追加で記述してください。

Private Sub UserForm_Initialize()
    Label1.Width = 180
    Label1.BackColor = RGB(220, 220, 0)
    CommandButton1.Height = 60
End Sub

VBAのプログラムの中でWidthプロパティを設定する(3)

これでコードの記述は完了です。では実際に試してみます。「Sub/ユーザーフォームの実行」をクリックしてください。

VBAのプログラムの中でWidthプロパティを設定する(4)

ユーザーフォームが表示されました。追加されているラベルの幅(と背景色)とコマンドボタンの高さがそれぞれ変更されていることが確認できます。

VBAのプログラムの中でWidthプロパティを設定する(5)

このように VBA のプログラムの中で Width プロパティおよび Height プロパティの値を変更することができました。

-- --

Excel のユーザーフォームで Width プロパティおよび Height プロパティを使ってコントロールのサイズを設定する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。