AccessのYes/No型を使用したクエリーで「カレントレコードがありません」

スポンサーリンク

時々Accessのサポートをさせて頂いています。
最近は、TeamViewerで相手方のPCへ接続させて頂き直接画面をみてエラー修正をする事が多いです。
環境によって再現性を考えると実際にエラーになっているのをみて調査と修正できるから
一番手っ取り早いサポート方法だと思っています。

「カレントレコードがありません」エラー

Accessで今まで正常動作していたけれど突然「カレントレコードがありません」と
画面を表示できなくなった場合は、その画面が起動時に何をしているのかを調査します。
もしクエリーをレコードソースに設定している場合は、そのクエリーでも同様のエラーが表示されます。

依頼時の資料にもありましたが、特定の項目(Yes/No型)が含まれる場合のみエラーになっていました。

調査結果・修正方法

集計クエリーを普通のクエリーにしたらエラーになりませんでした。
そこで調べたところ、やはりYes/No型が原因とわかりました。
対処法としては、NZ関数を使用してNULLの場合はfalseにするという風に修正しました。

例)項目名:chkフラグ

chkフラグ → NZ(chkフラグ, false)

バージョンアップしてエラーになる場合、半角カタカナを用いているとエラーになることが多いので
今回もその類なのかと思っていましたが、珍しいエラーケースでしたので記事に残すことにしました。

調査と修正、そして修正内容の説明で約1時間程でサポート終了しました。

原因について

数週間前まで普通に問題なく動いていたのに
何故か動かなくなるという不思議な現象が発生するのもACCESSならではなのですが
データの構造上、NULLが発生することが可能であるパターンが発生したのか
microsoft office accessのバージョンをあげた影響かなと思いました。

参考:AccessでのYes/No型を外部結合してGroupByすると「カレントレコードがありません」

スポット依頼について

ACCESSの軽微なエラー調査・修正を賜っております。
ランサーズ経由でご依頼をお願いします。
1回のスポット依頼で1万円~(所要時間 30分~2時間)で賜っています(2025年11月現在)
meetのURLを発行し、ランサーズのワークスペースでやり取りします。
ランサーズ経由でのスポット依頼

コメント

タイトルとURLをコピーしました