• ベストアンサー

Excel-VBA>コントロールをグレイアウトするには?

Excel-VBAでユーザーフォームのコントロールをグレイアウト(灰色にして入力不可能にする)するには、プロパティのどの項目を変更すれば良いのでしょうか? 具体的には、2つのオプションボタンの一方が選ばれたとき、その隣にあるテキストボックスをグレイアウトしたいのです。 ちなみに、グレイアウトの方法は、オプションボタンの状態を監視して、値がTrueになったときにテキストボックスのプロパティを変更させればいいのかな?・・・と考えていますが、この方法が間違っているようでしたら、それについてもアドバイスお願いします。 どうぞ宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

コマンドボタンのEnabledは、Captionが、グレーアウトになりますが、 テキストボックスでは、コードでバックカラーを変更するよりないかと思います。 こんな感じで・・・  Private Sub OptionButton1_Click() Me.TextBox1.Enabled = False Me.TextBox1.BackColor = &HC0C0C0 Me.TextBox2.Enabled = True Me.TextBox2.BackColor = &HFFFFFF End Sub Private Sub OptionButton2_Click() Me.TextBox2.Enabled = False Me.TextBox2.BackColor = &HC0C0C0 Me.TextBox1.Enabled = True Me.TextBox1.BackColor = &HFFFFFF End Sub ダメですか。

noname#148473
質問者

お礼

うまくいきました。求めていた通りの結果が得られました。どうもありがとうございました。

その他の回答 (1)

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

Enabled

noname#148473
質問者

補足

Enabledは質問の前に試していました。 確かに入力はできなくなりますが、グレイアウトはしません。どうも違うようです。

関連するQ&A

専門家に質問してみよう