
AccessのコンポボックスでNULLを入れたくない
Accessのテーブルで、NULLの代わりに0を入れたいのですが、どうすればいいのでしょうか?
テーブルの既定値は0です。
そのテーブルには、フォームのコンボボックスから値を入れます。
そのコンボボックスの選択は必修ではありません。
そのため、選択しない場合は、既定値の0が入ります。
また、選択した場合は、数字が入ります。
問題は、コンボボックスで選択して、やめた場合です。
まず、コンボボックスで選びます。
でも、きが変わり、デリート(削除)でコンボボックスを空欄にします。
そして、更新した場合、テーブルにNULLが入ります。
私の希望は、コンボボックスをデリート(削除)した場合、既定値の0を入れたいのですがどうすればいいのでしょうか?
値要求は、メッセージ(ダイアログ?)が出るので、設定しないものとします。(他の人が、そのメッセージが出るたびに、どうすればいいかきいてくるからです。)
よろしくお願いします。
No.4ベストアンサー
- 回答日時:
VBAになりますが
そのコンボボックスの更新後処理に
Private Sub コンボボックス名_AfterUpdate()
Me!コンボボックス名 = Nz(Me!コンボボックス名, 0)
End Sub
とすればNullの場合だけゼロに変換されます。
ありがとうございます。
これで、問題が解決しました。
ところで、最初の条件のところで、VBAは除くと入れようと思っていました。
しかし、それは無理だろうと思い、その条件は除外しました。
でも、これをマクロでやる(VBA以外)ってのは無理でしょうか?
No.9
- 回答日時:
> でも、これをマクロでやる(VBA以外)ってのは無理でしょうか?
なぜマクロでやりたいのかは不明ですが
更新後処理のマクロで
値の代入
アイテム [Forms]![フォーム名]![コンボボックス名]
式 Nz([Forms]![フォーム名]![コンボボックス名],0)
でできるでしょう。
エラー時にダイアログで簡単な説明を表示しても、読んでくれないのが人によっては"普通"みたいで、開発者が近くにいるから使用者も甘えてしまうのでしょうね。
ありがとうございます。
えっ!マクロでも出来るんですか?
私はこの問題にぶつかったとき、VBAでやるしか方法はないと考えていました。
>なぜマクロでやりたいのかは不明ですが
このシステムを作るに当っての条件として、だれでもわかると言う条件が付けられました。
その条件で行くと、VBAは却下となります。
しかし、VBAしか方法がないとなれば、例外も認められます。
そのため、マクロでは出来ないと言う確認のため、質問してみました。
No.8
- 回答日時:
参考に。
ほか、マクロの、条件式あり値の代入やリストボックスを見ておくといいのでは?。
マニュアルは作らなくても簡単な手順説明1フォーム画面あるだけでも違います。
ありがとうございます。
>簡単な手順説明1フォーム画面あるだけ
と、思うのですが、私のところでは、余分な画面があるだけで
「むずかし~、わからん」
「やっぱり、前のシステム(エクセル)の方が簡単や~」
となります。
そのため、不必要に文字を大きくしたりして、なるべく拒否反応が起らないようにする必要があります。
まるで幼稚園児に物を教えるような配慮が必要になります。
No.6
- 回答日時:
さらに追伸 (^^ゞ
いくら頑張ってすばらしい操作マニュアルを作成しても
勉強会のような形で半ば強制的に覚えてもらわないと
ほとんどの場合は『そこに置いといて後で見るから』で終わってしまい勝ち。
フォームのプロパティのその他タブにヒントテキストてのがありますので
簡単な説明はここに入れてあげましょう。
さらに追記(T-T)
>『そこに置いといて後で見るから』
そんな前向きな答えさえ期待できません。
上を見ればきりがありません。
そして、下を見てもきりがありません。
世の中には、創造を超えるところもあるようです。
No.5
- 回答日時:
追伸
まったく見ず知らずの第三者に使ってもらうのではなく
社内で使用する場合には、ある程度運用面で対応して行ったほうが良いかと
思います。
>他の人が、そのメッセージが出るたびに、どうすればいいかきいてくるからです。
社内使用の場合なら、そのアプリケーションの操作マニュアルを作り
また、コンボボックスはプルダウンした中から選ばんとイカン等々の
教育も必要かと。
作りこむのも大切ですがね。
正直『よくやってくれるよ』と言いたくなることもあり。
↑これは使用者への愚痴です。
ありがとうございます。
>コンボボックスはプルダウンした中から選ばんとイカン等々の
教育も必要かと。
私も、初めのころは、同じ考えでした。
しかし、今は、無理なものは無理と悟りました。
教育するどころか、私が教育された気分です。
あきらめることも肝心。
私が、この会社で唯一覚えたことかも知れません。
No.3
- 回答日時:
コンボボックスでしたね。
前の伝えたやり方でなく、更新したい値0をコンボボックスの見せない列に追加したらそう手間かからないし簡単です。既にあるものは更新クエリで良いです。
No.2
- 回答日時:
>そのテーブルには、フォームのコンボボックスから値を入れます。
(ユーザにテーブルに0がセットされたかどうかその瞬間で解らせる必要がなければ)
フォームのコンボボックスを非連結項目にしておいて、
テーブルへは
フォームのコンボボックスの更新後結果を元に更新する。
一通りの入力が終わったときに、
0にしたいデータがどれか、判断できれば更新クエリで一括更新も可能かと
思います。
ありがとうございます。
今回、テーブルをチェックして、NULLが入ることがわかりました。
だから、今までのデータは、更新クエリで修正するつもりです。
しかし、私は忘れっぽい。
ACCESSなんて、たまにしか触らない為、簡単なことでさえ忘れてしまいます。
今回も、久しぶりのため、入門書片手に質問しています。
そのため、できるだけ手間はかけないようにしたいと考えています。
入力時点で、0が入る処理はないでしょうか?
更新クエリでさえ、覚えておく自信がありません。(情けないですが・・・)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- Access(アクセス) Accessにインポートした複数のテーブルを表示させる方法が分かりません。 1 2023/01/30 20:22
- SQL Server DBのテーブルの設計ができず困っています。 2 2023/06/29 16:43
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
- Excel(エクセル) コンボボックス及びリストボックスを5段階連動させる方法をご存知の方ご教授頂きたいです。 Excelで 3 2022/04/03 21:43
- Excel(エクセル) Excelにの以下の設定方法について教えてください! C列にデータ入力の設定をしています。(出、入を 3 2022/06/22 01:33
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- Excel(エクセル) Excel コンボボックス バックカラー 1 2023/02/18 08:06
このQ&Aを見た人はこんなQ&Aも見ています
-
Access コンボボックスに空のレコードを表示しない方法
Access(アクセス)
-
アクセスVBAのMe!と[ ]
Access(アクセス)
-
コンボボックスでドロップダウンリストにしたときに・・・・
Visual Basic(VBA)
-
-
4
Access フォームコンボボックス空白をクエリで抽出したい
Access(アクセス)
-
5
Access サブフォームでの選択行の取得
その他(データベース)
-
6
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
7
ACCESSのSQLで、NULLかNULLでないかの判定
その他(データベース)
-
8
コンボボックスで選択したものをクリアーしたい(アクセス VBA)
Access(アクセス)
-
9
Access VBA Me.Requery レコードは削除されています エラー
その他(データベース)
-
10
Access2000、これはいったい・・・・
その他(データベース)
-
11
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
12
Access コンボボックスの値をクリアしたい。
PowerPoint(パワーポイント)
-
13
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
14
Accessで、サブフォームのあるフォーム内をEnterキーで移動したい
Access(アクセス)
-
15
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
16
レコードセットにnullの場合
Visual Basic(VBA)
-
17
フォーム上の全てのコントロールを取得したい
Access(アクセス)
-
18
入力規則違反-任意のエラーメッセージの表示
Access(アクセス)
-
19
Access2002 フォームを閉じるたびに「このフォームの変更を保存しますか?」と表示される
その他(データベース)
-
20
Accessのコンボボックスのデフォルト表示
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
尿検査前日に自慰行為した時の...
-
首吊りどこ締めるの
-
至急!尿検査前日にオナニーし...
-
尿検査の前日は自慰控えたほう...
-
VLOOKUP関数を使用時、検索する...
-
値が入っているときだけ計算結...
-
リンク先のファイルを開かなく...
-
検便についてです。 便は取れた...
-
2つの数値のうち、数値が小さい...
-
彼女のことが好きすぎて彼女の...
-
【Excelで「正弦波」のグラフを...
-
MIN関数で空白セルを無視したい...
-
EXCELで式からグラフを描くには?
-
一番多く表示のある値(文字列...
-
Excel 数値の前の「 ' 」を一括...
-
小数点以下を繰り上げたものを...
-
ある範囲のセルから任意の値を...
-
excelのIF関数 A,Bの大きいほ...
-
EXCELで条件付き書式で空白セル...
-
値が入っている一番右のセル位...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
彼女のことが好きすぎて彼女の...
-
イタリアから帰国する際、肉製...
-
2つの数値のうち、数値が小さい...
-
健否~書類の書き方~
-
VLOOKUP関数を使用時、検索する...
-
値が入っているときだけ計算結...
-
小数点以下を繰り上げたものを...
-
エクセルで空白セルを含む列の...
-
EXCELで条件付き書式で空白セル...
-
リンク先のファイルを開かなく...
-
ある範囲のセルから任意の値を...
-
精子に血が・・・
-
エクセルで数式の答えを数値と...
-
風俗店へ行く前のご飯
-
エクセル指定した範囲からラン...
-
一番多く表示のある値(文字列...
-
Excel 数値の前の「 ' 」を一括...
-
ワードのページ番号をもっと下...
-
MIN関数で空白セルを無視したい...
おすすめ情報