• ベストアンサー

Excel VBAでユーザーフォームを編集不可にする方法

Excel VBAでユーザーフォームを編集不可にする方法がわからなくて困っています。起動時に編集不可の状態にしておき、コマンドボタンを押したときに編集可能にするような方法を考えています。 Accessの場合は Me.AllowEdits = False などできるのですが、Excelではどうすればいいのか、どうか教えてください。

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

  • ベストアンサー
  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.2

>ユーザーフォーム内のテキストボックス、オプションボタンなどの データを入力または変更できる部分です。 コマンドボタンやスクロールバーなどは常に有効な状態のままにしていたいです。 各オブジェクトのEnabledプロパティをfalseにすればよいのではないでしょうか。 Textbox1.enabled = falseのような感じです。 オブジェクトの数が多い場合は、コントロール配列の使用または、フレームを用意しその上にオブジェクトを移動しフレームのEnabledプロパティを設定してください。

50000
質問者

お礼

各オブジェクトのEnabledプロパティをfalseにすればいいことは分かってたんですが、 オブジェクトの数が多すぎるのでほかの方法を探していました。 回答の通りオブジェクトをフレームの上に移動して フレームのEnabledプロパティを設定する方法で解決できました。 教えてくださってありがとうございました。

その他の回答 (1)

  • lul
  • ベストアンサー率41% (10/24)
回答No.1

ユーザーフォームのどの部分を編集不可にするのですか? フォームまたはパーツ単位で可/不可を設定するなら設定したい箇所の Enabled=False としてやればできると思います。 コマンドボタンが押された時は逆にTrueにしてやればできますよ。

50000
質問者

補足

ユーザーフォーム内のテキストボックス、オプションボタンなどの データを入力または変更できる部分です。 コマンドボタンやスクロールバーなどは常に有効な状態のままにしていたいです。

関連するQ&A