VBA~ユーザーフォームのコマンドボタンをフォーカスを受け取らない設定にしよう~Excel
ユーザーフォームのコマンドボタンがフォーカス(マウスクリックまたはキーボード入力を受け取ることができること)を受け取らないように設定したい場合はEnabledプロパティをFalseに設定します。
書き方
オブジェクト名.Enabled = False
オブジェクト名はユーザーフォームのオブジェクト名と、コマンドボタンのオブジェクト名を指定します。オブジェクト名の確認方法は作成したユーザーフォームファイルをクリックするとユーザーフォームが表示されます。ユーザーフォーム全体を選択するとプロパティウィンドウにオブジェクト名という項目があるので、それがユーザーフォームのオブジェクト名になります。次にコマンドボタンを選択すると同じようにコマンドボタンのオブジェクト名が確認できます。プロパティウィンドウが表示されていない場合はメニューの表示からプロパティウィンドウをクリックすると表示されます。
UserForm1というユーザーフォームを作成し、CommandButton1というコマンドボタンを設定した場合、下のコードを実行するとコマンドボタンを選択できなくなります。文字列は淡色で表示されます。
Sub test1() Load UserForm1 UserForm1.CommandButton1.Enabled = False UserForm1.Show End Sub
プロパティウィンドウで設定
作成したユーザーフォームのファイルをクリックしプロパティウィンドウの選択欄からコマンドボタンを選択します。プロパティウィンドウにEnabledの項目があるのでクリックすると▼マークが表示されるのでFalseを選択してください。。プロパティウィンドウが表示されていない場合はメニューの表示からプロパティウィンドウをクリックすると表示されます。