
Access初心者です。
フォームのコンボボックスですが、ウェブフォームでよく見られるように、未選択時に「---選択してください---」というコメントを表示できないでしょうか。
「---選択してください---」はデータとして入らないような解決法でお願いします。
VBAでMe!コンボボックス名.Value = "AAA"というふうにやってみましたが、どうもValueはテーブルのデータ型と同じでないとダメみたいです。テーブルの当該フィールドには例えば都道府県IDのように、数値だけしか格納しない予定ですので、これでは「このフィールドに入力した値が正しくありません」というエラーが出ます。
なお使っているのは2013です。いい解決法がないでしょうか。よろしくお願いたします。
No.3ベストアンサー
- 回答日時:
都道府県テーブル を変更することが可能なら、
下記のようにするのが一番簡単でしょう。
m_prefecture
prefecture_ID prefecture_name
0 ---選択してください---
1 北海道
2 青森県
3 岩手県
コンボボックス
名前 cb都道府県
値集合ソース
SELECT m_prefecture.prefecture_ID, m_prefecture.prefecture_name FROM m_prefecture;
規定値 0
連結列 1
列数 2
列幅 0cm
フォームの 更新前処理 で、
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Nz(Me.cb都道府県) = 0 Then
Cancel = True
MsgBox "都道府県を選択してください。"
Me.cb都道府県.SetFocus
End If
End Sub
ありがとうございます。
これでとりあえず希望通りの処理が実現できて、よかったです。
やはり、phpとかと同じように行かないのですね。
丁寧に教えていただき、本当にありがとうございました。
No.2
- 回答日時:
フィールドには、都道府県ID が格納されているが、表示は都道府県名 という設定ですね。
このように格納データと表示が異なる場合は、書式プロパティは無視されますので、前回の回答は使えませんね。
設定により対処法が異なるので、下記の情報をご提示ください。
そのコンボボックスは連結コントロールですか。非連結コントロールですか。
連結の場合、フォームは帳票フォームですか。単票フォームですか。
また、
未入力の場合、ボックス部に「---選択してください---」と表示するのに加えて、
ドロップダウンリストの先頭に「---選択してください---」と表示もさせたいですか。
この回答への補足
ありがとうございます。お答えします。
コンボボックスは連結コントロールです。
フォームは単票形式です。
「---選択してください---」の表示方法ですが、
例えばこのページ
http://www.metalart.co.jp/saiyo/contact.html
の都道府県入力欄をご確認ください。
それと同じことを実現したいと思います。
よろしくお願いたします。
No.1
- 回答日時:
コンボボックスのコントロールソースは数値型のフィールドだとして、
書式プロパティを下記のように設定します。
0;-0;0;"---選択してください---"
コンボボックスの幅は、「---選択してください---」が表示できる幅にしてください。
ちなみに、フィールドがテキスト型の場合は、
&;"---選択してください---"
となります。
この回答への補足
ご回答ありがとうございます。
ご教示いただいたとおりにやってみましたが、左寄せだったコンボボックス内の内容が右寄せになるだけでした。
状況を補足しますと、コンボボックスでは 都道府県ID(整数)、都道府県名(文字列)によって構成されている都道府県テーブルをコントロールソースとしていて、値集合ソースは SELECT m_prefecture.prefecture_name FROM m_prefecture; となっています。
列数は1で、連結列は0です。
これにより、表示は都道府県名、データは都道府県IDとなっています。
再度教示お願い出来ますか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【教えて!goo ウォッチ 人気記事】風水師直伝!住まいに幸運を呼び込む三つのポイント
記事を読む>>
-
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
access コンボボックス初期表示について
Visual Basic(VBA)
-
Access コンボボックスの値をクリアしたい。
PowerPoint(パワーポイント)
-
4
ACCESSのリストボックス規定値について
Access(アクセス)
-
5
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
6
MS Accessでフォームの「開く時」と「読込み時」のイベントの違い
Access(アクセス)
-
7
VBAをつかってクエリの情報を抽出するには??
Visual Basic(VBA)
-
8
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
9
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
10
ACCESSで値を代入できないとは?
Visual Basic(VBA)
-
11
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
12
アクセスVBAのMe!と[ ]
Access(アクセス)
-
13
accessの自動更新処理をできないようにするにはどうすれば良いですか?
その他(データベース)
-
14
サブフォームを非表示させる方法を教えて下さい
その他(Microsoft Office)
-
15
クエリで出来た表にチェックボックスを追加する
その他(Microsoft Office)
-
16
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
17
Accessフォームが入力できません。
Access(アクセス)
-
18
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
19
ACCESSでコントロールソースの変更
Access(アクセス)
-
20
【Access】クエリで抽出したデータをCSV形式でエクスポートできますか?
Access(アクセス)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
Accessのフォーム(コンボボッ...
-
5
ACCESSでコンボボックスにSQLで...
-
6
X-Ripperというフリーウェアに...
-
7
クエリーの結果をフォームに表...
-
8
ACCSESS2013VBA フォームのレコ...
-
9
PDFファイルから特定の文字を検...
-
10
AccessのRefresh・Requery・Rep...
-
11
ACCESS フォームで抽出したデー...
-
12
PDFファイル/抽出許可され...
-
13
AccessのWHERE句において、変数...
-
14
メインフォームとサブフォーム...
-
15
access の 最終レコードの判定...
-
16
サブフォームのデータを保存す...
-
17
入力した値をコンボボックスに...
-
18
ACCESS フォームで入力データ...
-
19
access 最大化した時の画面の...
-
20
Access サブフォームでの選択行...
おすすめ情報
公式facebook
公式twitter