• ベストアンサー

ACCESS:コンボボックスのロックについて

初めまして。 まったくの初心者ですが宜しくお願いします。 環境はOS:Xp・ACCESS2000です コンボボックスをあらかじめ登録されているリストからしか選べないように、要はコンボボックスに文字などキーボードからの入力を受け付けないようにしたいのですが、どのようにすれば良いのでしょうか? プロバティに編集ロックというのがあるのですが、それをするとリストからも選べなくなってしまいます。 どうか宜しくお願いします。

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

  • ベストアンサー
回答No.3

こんにちは。 キー入力を受け付けないようにするのでしたら、コンボボックスの「キークリック/KeyDown」イベントに、 KeyCode = 0 と入力すればどうでしょうか?

yu--ko
質問者

お礼

皆様ありがとうございます。 おかげで大変助かりました。 失礼かとは思うのですが、 もう1回だけ突っ込んだ質問をさせていただきます。 コンボボックスに入力は出来なくなったのですが、 カーソル(フォーカス?)も来なくなるようにはどうしたら良いのでしょうか? 度々申し訳ありませんが、宜しくお願いします。

その他の回答 (3)

回答No.4

No.3です。 >カーソル(フォーカス?)も来なくなるようにはどうしたら良いのでしょうか? これはTabキーを押しても、コンボボックスにカーソルが来ないようにしたい、という意味ですか? もしそうだとしたら、コンボボックスのプロパティ〔その他〕タブの「タブストップ」を「いいえ」にすればカーソルは来なくなるはずですが・・。

yu--ko
質問者

お礼

ありがとうございました。 大変参考になりましたし解決も出来ました。 あらかじめ言っておくのもどうかと思いますが、 また何か疑問が出た時は宜しくお願いいたします。

  • popesyu
  • ベストアンサー率36% (1782/4883)
回答No.2

[入力チェック]プロパティを「はい」にすると一覧以外のデータ入力不可になりますが。 入力されても何も表示されないようにしたいなら、VBAの方でキーイベントを見張ってその都度クリアさせるとか。 ex. If keycode > 0 Then me!コンボボックス名.Text = "" End if

  • laputart
  • ベストアンサー率34% (288/843)
回答No.1

コンボボックスのプロパティで 入力チェックを「はい」にすると リスト外入力した場合、ダイアログが出て 登録できないようになります。 最初空欄になるのがいやなら「規定値」を リストの一行目と同じに設定しておけばいいです。

yu--ko
質問者

お礼

さっそくの回答ありがとうございます。 大変参考になりました。 少し突っ込んだ質問になってしまうかも知れませんが、 入力すら出来ないように(コンボボックスのリスト以外は)するにはどのようにしたら良いのでしょうか? 宜しくお願いします。