質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

2回答

6973閲覧

Accessのコンボボックスについて教えてください

syncrock

総合スコア209

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2016/04/26 07:03

コンボボックスで入力を許さない(リストにあるものしか選択できない)ようにするために、入力チェック等を付けるようにし、リスト以外の値は受け付けないようにしています。
ここで質問なのですが、KeyPressで無効化する以外でそもそも入力出来ないようにすることは出来ないでしょうか?
また、コンボボックスにIME変換モードを「無変換」にしてもバーの入力モードは「無」にならないのですが、コンボボックスでは意味がないのでしょうか?
(何かソースのようなものがあれば教えて頂ければと思います。)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

もし使われているのが新しめのAccessであれば、ComboBox.LimitToList プロパティが使えませんか?

ComboBox オブジェクト >> プロパティ >> "LimitToList/入力チェック" プロパティ

"LimitToList/入力チェック" プロパティを使用し、コンボ ボックスの値を一覧の項目だけに制限するかどうかを示します。値の取得および設定が可能です。ブール型 (Boolean) の値を使用します

投稿2016/04/26 07:35

dojikko

総合スコア3939

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

KeyPressで無効化する以外でそもそも入力出来ないようにすることは出来ないでしょうか?

コンボボックスのプロパティで「データ」タブにある「値リストの編集の許可」を「いいえ」でいけるのではないでしょうか。

コンボボックスにIME変換モードを「無変換」にしてもバーの入力モードは「無」にならないのですが、コンボボックスでは意味がないのでしょうか?

そのコンボボックスに連結されているフィールドのデータ型が数値等、文字列ではないのではないでしょうか。
IME変換モードはIMEが起動した際のデフォルトの設定値なのでIMEが起動しない状態では反応しないと思います。

投稿2016/04/26 07:18

kaz.Suenaga

総合スコア2037

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

syncrock

2016/04/26 07:34

回答ありがとうございます。 「値リストの編集の許可」を「いいえ」にしても入力することは可能です。 もちろん例えばリストに「1」というものがあれば「1」を入力して項目を離れてもエラーなどにはなりません。 項目についてはIMEは起動しています。ですので、コンボにフォーカスがある状態で入力モードや変換モードを変更することが出来ます。
kaz.Suenaga

2016/04/26 07:40

あ、入力ってリストへの任意のテキストの追加の意味でなく、キーボード入力を禁止して選択だけにさせたい、という事ですか。 そうであればそれはコンボボックスの設定では無さそうです。 その目的であればリストボックスを使うべきでしょう。 また、IMEについてはそもそもそのコンボボックスが数値しか許されないデータ型であれば「無変換」へのモード変更はされませんでしたが、テキスト型やメモ型に連結されているものであればIMEは起動して「無変換」がデフォルトになりました。 条件はその他にもあるかもしれませんがDBとしてそもそも数値以外入らない場合そういった動作をする可能性はありそうです。
syncrock

2016/04/26 07:53

やはり、リストボックスですか。。。ありがとうございます。 すいません、知識がなくて申し訳ないのですが。 現在、値集合ソースにテーブルを指定、連結列を2で設定しています。 テーブルの型は両方ともテキスト型です。 この場合、 kaz.Suenaga様の説明に当てはめるとIMEは「無変換」がデフォルトになるはず。ということでしょうか? そうであれば、現在はそのような挙動ではない為何か違う条件がありそうですね。。
kaz.Suenaga

2016/04/26 14:38

そのコンボボックスでIMEを自動起動にして、IMEモードを無変換にしてあれば、「無変換」になりそうです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問