電子書籍の厳選無料作品が豊富!

ACCESSで住所録の住所フィールドから都道府県を抽出し、同じテーブルの都道府県フィールドに入れたいのですがどのようにしたら良いのでしょうか?

A 回答 (2件)

住所録を元に更新クエリを作ります。


住所録の都道府県だけのフィールドのクエリを作りクエリを更新クエリにします。
クエリのレコードの更新の欄に下記をコピーします。(住所フィールドが住所で良ければ違えば正しいフィールド名にしてください。)

IIf(InStr([住所],"都")>0,Mid([住所],1,InStr([住所],"都")),IIf(InStr([住所],"道")>0,Mid([住所],1,InStr([住所],"道")),IIf(InStr([住所],"県")>0,Mid([住所],1,InStr([住所],"県")),IIf(InStr([住所],"府")>0,Mid([住所],1,InStr([住所],"府"))))))

これで終わりです。クエリを保存してクエリを開けば全て住所から都道府県を抜き出し都道府県に書き込んでくれます。
試しに住所録の選択クエリに上記をコピーして試してみてください。
    • good
    • 0
この回答へのお礼

ありがとうございました。
無事解決することができました。

お礼日時:2006/04/02 11:55

こんばんは。



「住所フィールドは都道府県名から始まっている。
すなわち、住所フィールドの先頭から3文字もしくは4文字を
抜き出して、都道府県フィールドに入れればいい。」
という前提で回答します。

更新クエリで、住所録テーブルを選択します。
フィールド⇒都道府県
レコードの更新⇒Left([住所],3) とします。
次に、同じ更新クエリで、
条件判定用フィールド(「判定」とでもしておきます。)を作成します。
フィールド⇒判定:Mid([住所],3,1)
抽出条件⇒"都"or"道"or"府"or"県"
とします。
これで、住所フィールドの先頭から3文字目が
"都""道""府""県"のいずれかのデータが更新対象になりました。

これでこの更新クエリを実行すると、神奈川県、和歌山県、鹿児島県以外(=都道府県名が2文字)のデータが更新されます。

次に、別の更新クエリを作成し、
フィールド⇒都道府県
レコードの更新⇒Left([住所],4)
抽出条件⇒is null とします。

これを実行すると、最初の更新クエリで更新対象とならずに、
フィールドがnullのままのデータ(=都道府県名が3文字のデータ)だけが更新されて、完成です。

わかりにくかったでしょうか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!