- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access Nullの評価について)
Access Nullの評価について
このQ&Aのポイント
- Nullの評価について質問があります。
- Access2010のフォームでの値の変更をチェックし、該当レコードを更新する処理があります。
- Nullの場合、イコールで評価できないのか質問しています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> そもそもNullの場合は、イコールで評価出来ないのでしょうか。 はい、Null を含む式の結果は Null になりますので、評価できません。 Null = Null の結果は Null Null = "@" の結果も Null > If Me.AAA & "@" = Me.BK_AAA & "@" ・・・ > のように文字をくっつけて評価させればよいかと思うのですが、 それでもいいですが、通常は Nz関数を使いますね。 If Nz(Me.AAA) = Nz(Me.BK_AAA) ・・・
その他の回答 (2)
- hatena1989
- ベストアンサー率87% (378/433)
回答No.3
> 文字列なら「if "" = "" 」、数値なら「if 0 = 0」で評価 > される・・という認識でよろしいでしょうか。 はい、いいです。 Nz(Null) = "" も Nz(Null) = 0 もTrue を返します。
質問者
お礼
ありがとうございます。 大変勉強になりました。
noname#231195
回答No.2
Nz(Me.BK_AAA) のように全部Nz関数を通してみてください。 たぶんこれで行きます。 >If Me.AAA & "@" = Me.BK_AAA & "@" ・・・ >のように文字をくっつけて評価させればよいかと思うのですが いや、おそらくうまくいかないでしょう。 エラーが出るんじゃないかと思います。試していませんが。
質問者
お礼
szo_orz さま ご回答ありがとうございます。 NZ関数ってのがあるんですね。 やってみたいと思います。 ちなみに、& "@"で実際にやりましたが特に問題無く評価 できたようです。 ただ、邪道なやり方だと思いますのでNZ関数を使ってみたい と思います。 ありがとうございました。
お礼
hatena1989さま いつもご回答ありがとうございます。 >Null = "@" の結果も Null このようなケースもNullになってしまうんですね。 If Nz(Me.AAA) = Nz(Me.BK_AAA) ・・・ としてみて、それぞれNullだった場合、もとのデータが 文字列なら「if "" = "" 」、数値なら「if 0 = 0」で評価 される・・という認識でよろしいでしょうか。