MS Access Tips/Sample and VBA and Blog customize etc...

Null値を簡単に置換する

今回は、プチTips です。

メニューの「置換」コマンドで一気にフィールドを置換することができるのは知ってますよね。

では、テーブルで未入力のデータ(Null)を一気に特定の値に置換したい場合、どうしたらいいでしょう。「検索する文字列」を空白のままでは置換できません。

こういう場合は、通常、更新クエリを使いますね。具体的には、抽出条件を Is Null にしておいて更新値を設定します。

Access2000までは、こうするしかありませんでした。AC2003では、「検索する文字列」に「Null」と入力するとNull値を検索できます。(おそらくAC2002でもOKだと思いますが、未確認です。)

置換ダイアログ「Null」を「1」に変換

上記のように設定すると、Null値をすべて1に変換できます。

テーブルを開いていて、さっとNull値を変換したいと言うときには、クエリを新規作成してやるよりは、簡単にできますので知っておくと便利かも。

ここで、テキスト型で Null という文字列があるときはどうなるのかという疑問が出てきます。そこで、試してみました。

置換ダイアログ「Null」を「無し」に変換

上記の設定だと、未入力(Null値)も"Null"という文字列もどちらも検索して置換してしまいます。
どちらかだけを対象にしたいときは、やはりすなおに更新クエリを使うしかなさそうです。

追記

旧ブログの記事に対する YU-TANG さん、コルネ さんのコメントを参考にした補足情報です。

未入力(Null値)と"Null"という文字列が混在するテーブルで、未入力(Null値)のみ変換したい場合は、「検索する文字列」に「Is Null」と設定すると、Null値のみ置換されます。

逆に"Null"という文字列のみを置換したい場合は、[検索する文字列] 欄に「[N][u][l][l]」と入力すると、文字列の "Null" だけ置換されます。


拍手する

Leave a reply






Trackbacks

trackback URL
http://hatenachips.blog34.fc2.com/tb.php/51-4ac897d8
該当の記事は見つかりませんでした。