Excelで、ユーザーフォームでテキストボックスを使う記録です。
下図はExcel2016です。
< スポンサーリンク >
テキストボックスを作成
VBE上でユーザーフォームを表示し、ツールボックスの[テキストボックス]ボタンをクリックする。
テキストボックスの大きさにドラッグします。
ユーザーフォームを実行したときのテキストボックスです。
テキストボックスの名前を確認
VBAでテキストボックスを操作するのに、テキストボックスの名前が必要になります。
テキストボックスの名前を確認してみます。
テキストボックスをアクティブにし、[プロパティウィンドウ]をクリックします。
プロパティの[オブジェクト名]がテキストボックスの名前です。
テキストボックスの値をシートのセルに反映
シートのセルの値をユーザーフォームのテキストボックスに反映、ユーザーフォームのテキストボックスの値をシートのセルに反映させてみます。
ユーザーフォームにコマンドボタンを作ります。
ツールボックスの[コマンドボタン]をクリックします。
ボタンの大きさにドラッグします。
ボタンを2つ作ります。
ボタンをアクティブにした状態で、[プロパティウィンドウ]をクリックします。
プロパティウィンドウでコマンドボタンに表示されている文字を変更します。
例:「A1セルから取得」「B1セルへ入力」
コマンドボタンをダブルクリックします。
アクティブシートのセルA1の値をテキストボックスへ値が反映されるように書き込みます。
Private Sub CommandButton1_Click()
TextBox1.Value = ActiveSheet.Range(“A1”).Value
End Sub
下の×をクリックすると、元のユーザーフォームの画面に戻ります。
同じようにもう1つのボタンにも、テキストボックスの値をアクティブシートのセルB1へ値が反映されるように書き込みます。
Private Sub CommandButton1_Click()
ActiveSheet.Range(“B1”).Value = TextBox1.Value
End Sub
実行してみます。
アクティブシートのセルA1→テキストボックス
テキストボックス→アクティブシートのセルB1
こんな記事も書いています