Excel/VBA

TOP

テキストボックスの使い方

目次

テキストボックスから値を取得する

テキストボックスから値を取得するには、まずユーザーフォームを作成しテキストボックスを配置してください。

テキストボックスの使用方法の説明画像です

テキストボックスの値の出力結果を表示させるため、ボタンを配置します。(ボタンの名前「Caption」は実行としておきます)

テキストボックスの使用方法の説明画像です

配置したボタンをダブルクリックし、ソースコードの画面へと移動します。

テキストボックスの使用方法の説明画像です

テキストボックスの値を取得するには、「ユーザーフォームのオブジェクト名.Text」とすることで値を取得できます。
下記のように、「Debug.Print」で入力された結果をイミディエイトウィンドウに表示させる処理を記述します。

テキストボックスの使用方法の説明画像です

標準モジュールを作成し、作成したユーザーフォームを表示させるソースコードを記述し、ユーザーフォームを表示させます。

テキストボックスの使用方法の説明画像です

値をテキストボックスへ入力し、実行ボタンをクリックすると、イミディエイトウィンドウに入力された値が表示されます。

テキストボックスの使用方法の説明画像です

テキストボックスの値をセルに入れる

テキストボックスの値をセルに入れる方法は、「Range("セル番号").Value = テキストボックスのオブジェクト名.Text」と記述することでセルに値を入れられます。

作成したユーザーフォームのボタンをダブルクリックし、ソースコードの画面を開き、下記のように記述してください。

下記のソースコードはA1セルにテキストボックスの値を入れています。

テキストボックスの使用方法の説明画像です

上記のソースコードを実行することで、テキストボックスの値がA1セルに入ります。

テキストボックスの使用方法の説明画像です

テキストボックスにセルの値を反映させる

ユーザーフォーム起動時にテキストボックスにセルの値を反映させる方法には、ユーザーフォーム起動時のイベント(Initializeイベント)を使用します。

まずは、ユーザーフォームの上でダブルクリックを行いソースコードの画面を開きます。

テキストボックスの使用方法の説明画像です

ユーザーフォームにInitializeイベントを追加します。Initializeイベントを追加するには右上にあるプルダウン(Clickと記載されている箇所)からInitializeを選択します。

テキストボックスの使用方法の説明画像です

UserForm_Initializeというプロシージャが作成されます。

テキストボックスの使用方法の説明画像です

Initializeイベントに「TextBox1.Text = Range("A1").Value」と記述します。値をセルに入れる時とは逆で、テキストボックスにセルA1の値を入れるという意味です。

テキストボックスの使用方法の説明画像です

再度ユーザーフォームを起動すると、セルA1の値がテキストボックスに反映されていることが確認できます。

テキストボックスの使用方法の説明画像です

他のユーザーフォーム編