Excel ユーザーフォームでテキストボックスを使う

Excelで、ユーザーフォームでテキストボックスを使う記録です。

下図はExcel2016です。

Excelユーザーフォームテキストボックス

 

< スポンサーリンク >

 

テキストボックスを作成

VBE上でユーザーフォームを表示し、ツールボックスの[テキストボックス]ボタンをクリックする。

Excelユーザーフォームテキストボックス

 

テキストボックスの大きさにドラッグします。

Excelユーザーフォームテキストボックス

 

ユーザーフォームを実行したときのテキストボックスです。

Excelユーザーフォームテキストボックス

 

テキストボックスの名前を確認

VBAでテキストボックスを操作するのに、テキストボックスの名前が必要になります。

テキストボックスの名前を確認してみます。

テキストボックスをアクティブにし、[プロパティウィンドウ]をクリックします。

Excelユーザーフォームテキストボックス

 

プロパティの[オブジェクト名]がテキストボックスの名前です。

Excelユーザーフォームテキストボックス

 

テキストボックスの値をシートのセルに反映

シートのセルの値をユーザーフォームのテキストボックスに反映、ユーザーフォームのテキストボックスの値をシートのセルに反映させてみます。

ユーザーフォームにコマンドボタンを作ります。

ツールボックスの[コマンドボタン]をクリックします。

Excelユーザーフォームテキストボックス

 

ボタンの大きさにドラッグします。

Excelユーザーフォームテキストボックス

 

ボタンを2つ作ります。

Excelユーザーフォームテキストボックス

 

ボタンをアクティブにした状態で、[プロパティウィンドウ]をクリックします。

Excelユーザーフォームテキストボックス

 

プロパティウィンドウでコマンドボタンに表示されている文字を変更します。

例:「A1セルから取得」「B1セルへ入力」

Excelユーザーフォームテキストボックス

 

コマンドボタンをダブルクリックします。

Excelユーザーフォームテキストボックス

 

アクティブシートのセルA1の値をテキストボックスへ値が反映されるように書き込みます。

Private Sub CommandButton1_Click()
    TextBox1.Value = ActiveSheet.Range("A1").Value
End Sub

Excelユーザーフォームテキストボックス

 

下の×をクリックすると、元のユーザーフォームの画面に戻ります。

Excelユーザーフォームテキストボックス

 

同じようにもう1つのボタンにも、テキストボックスの値をアクティブシートのセルB1へ値が反映されるように書き込みます。

Private Sub CommandButton1_Click()
    ActiveSheet.Range("B1").Value = TextBox1.Value
End Sub

Excelユーザーフォームテキストボックス

Excelユーザーフォームテキストボックス

 

実行してみます。

アクティブシートのセルA1→テキストボックス

Excelユーザーフォームテキストボックス

Excelユーザーフォームテキストボックス

 

テキストボックス→アクティブシートのセルB1

Excelユーザーフォームテキストボックス

Excelユーザーフォームテキストボックス

 

< スポンサーリンク >



サブコンテンツ

このページの先頭へ