• ベストアンサー

ACCESSで住所を分割したい。

Accessにて住所入力されているフィールドを郵便番号変換される部分とそれ以降に分割したいのですが、お分かりになる方教えてください。 (例)〒143-0016 東京都大田区大森北×××-××× と入力されているデータを 東京都大田区大森北 と ×××-××× にすることは可能なのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
noname#140971
noname#140971
回答No.4

既に正答がなされていますが・・・。 ここは、以下の CutStr関数を利用した別解を・・・。 [イミディエイト] ? CutStr("東京都大田区大森北123-444", "東京都大田区大森北", 2) 123-444 Public Function CutStr(ByVal Text As String, _             ByVal Separator As String, _             ByVal N As Integer) As String   Dim strDatas() As String      strDatas = Split("" & Separator & Text, Separator, , 0)   CutStr = strDatas(N * Abs((N <= UBound(strDatas)))) End Function [イミディエイト] ? CutStr("東京都大田区大森北123-444", "東京都", 2) 大田区大森北123-444 ? CutStr("大田区大森北123-444", "区", 1) & "区" 大田区 ? CutStr(CutStr("東京都大田区大森北123-444", "東京都", 2), "区", 1) & "区" 大田区 と、区名なども CutStr()一つで取り出せます。

xxmassxx
質問者

お礼

ご回答ありがとうございました。 自分の実力ですと、高度でしたが、今後の為に参考にさせていただきます。

その他の回答 (3)

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.3

>残りの ×××-××× の部分を取り出すことに四苦八苦しています。 HouseNumber: Replace([AddressA],[AddressB],"")

xxmassxx
質問者

お礼

ありがとうございます

noname#140971
noname#140971
回答No.2

補足: 差を求めた後に既存の住所を修正する点は回答から省いています。 また、2度目のスキャンで差が無い場合に空値に更新しないなどの留意点も省いています。 そこら辺りは適当に・・・。

xxmassxx
質問者

お礼

お礼漏れしてました。誠に申し訳ありません。

noname#140971
noname#140971
回答No.1

ID__________[______1] Zip_________[143-0016] Address1____[東京都__________] Address2____[大田区__________] Address3____[大森北__________] HouseNumber_[×××-×××] ということは、郵便番号データと番地とを分割したいということでしょう。 ならば、 Zip_________[143-0016] AddressA____[東京都大田区大森北×××-×××] AddressB____[東京都大田区大森北_____________] HouseNumber_[×××-×××] と、既存の住所と郵便番号から生成した新しい住所との差を求めるフォームを作成。 で、ツーツーッと最後のレコードまで走らせたら・・・。 と、思います。

xxmassxx
質問者

お礼

お礼漏れしてました。誠に申し訳ありません。

xxmassxx
質問者

補足

早速のご回答ありがとうございます。 東京都大田区大森北×××-××× と入力されているデータから 東京都大田区大森北 までは取り出せたんですが、 残りの ×××-××× の部分を取り出すことに四苦八苦しています。 素人な質問で申し訳ありません。 Zip_________[143-0016] AddressA____[東京都大田区大森北×××-×××] AddressB____[東京都大田区大森北] HouseNumber_[この部分を抽出したいのですが、]

関連するQ&A

  • 住所の分割方法

    顧客データで、住所フィールドが1,2,3とあり、本来であれば、 1・・・都道府県 2・・・市区町村から番地 3・・・マンション、アパート名 としなければいけないのですが、郵便番号辞典から入力したため、住所2のフィールドに1と2がくっついて入力されています。 これを都道府県で切って、都道府県名を住所1のフィールドに、市区町村から番地までを住所2のフィールドに分割したいのですが、関数もしくはマクロがあれば教えてください。 住所1には、「東京都」などの「都」に相当する都道府県名まで入れたいのですが。 (データが5000件くらいあります)

  • Access2013 住所録の都道府県を削除

    Access2013 フィールド(短いテキスト)に住所を「東京都大田区糀谷」や「神奈川県横浜市港南区」などと入力してある住所録があります。 これから、都道府県の表示を削除するクエリを教えて下さい。 宜しくお願いします。

  • Access入力済の郵便番号から自動的に住所入力

    Access2013 テーブルのフィールドにすでに入力してある郵便番号から、都道府県と住所の2分割に自動的に入力する方法を教えて下さい。 住所入力支援ウイザードで、個々に郵便番号を打ち込み入力し、都道府県と住所を自動入力することはできたのですが。 宜しくお願いします。

  • アクセスで新住所に一括変換できますか?

    初心者です。 アクセスで顧客データを管理しています。 郵便番号辞書は新しくできたのですが、今まで入力した住所は旧住所のままです。 番地は別のフィールドに入力しているのですが、一括変換ってできますか?

  • accessの住所入力支援について

    access2003を使っています 下のように住所入力支援を設定しました。 けれども以降の住所の所に入力した郵便番号が表示されてしまいます。理由が分からず困っています。 郵便番号 ;住所-市区町村;住所-以降の住所 住所-市区町村と住所-以降の住所 郵便番号;;; よろしくお願いします。

  • 住所入力支援について(Access2000)

    Access2000を使用しています。テーブルのフィールドプロパティで郵便番号、住所のところで住所入力支援とありますが、この郵便番号データはいつのものが入っているのでしょうか?最新データには更新されないんですよね。多分・・・

  • 住所入力支援について(Access2000)

    Access2000を使用しています。 テーブルのフィールドプロパティで郵便番号、住 所のところで住所入力支援を設定しました。 住所を入力して郵便番号が表示されます。 これは、問題ないのですが・・・・ 郵便番号を入力すると、住所を表示します。 そして、住所の入力(番地)の為、 ENTERを押すと住所は消えてしまいます。 カーソルを住所の最後に移動してクリックしても 住所が消えてしまいます。どこか設定が悪いのでしょうか? 基本的なことなのかもしれませんが、教えてください。

  • ACCESSのカスタマーバーコードについて

    こんにちは!! ACCESSのカスタマーバーコードについて質問します。 カスタマーバーコードを作る際のテーブルの住所フィールドは、郵便番号、住所、建物名などは、一つのフィールドで良いのでしょうか? 例えば・・・ 111-0000東京都千代田区霞ヶ関1-1-1ABCビル2F と一つのフィールドにしてしまって良いのでしょうか? ヘルプを見ても分かりませんので、よろしくお願いいたします。

  • 郵便番号と住所について。

    Access2000で住所録をつくっています。 郵便番号を入力して変換すると住所になる、というIMEの機能はわかったのですが、郵便番号と住所を別の欄につくったので、郵便番号を入力したら自動で住所欄に住所が入るようにしようと思い、郵政省のところから住所録(全国版)を持ってきました。 これを「住所録」というテーブルにしました。 フィールドとしては ・郵便番号 ・都道府県 ・市町村 ・町名 の4つです。 これを使い自動で入力を行うような状態にしたいのです。 郵便番号を入れると自動で入力されるようにする、というのはなんとかできそうなのですが、逆のパターンの場合にどうしたらいいか考えています。 (例えば同じ町名でも番地によって郵便番号が違うのはどうしたらいいか・・・など。) また、「北海道」と都道府県に入力したら市町村のところには北海道の市町村しか出ないようにするにはどうしたらよいでしょうか?(町名もおなじく。) やはり都道府県別にテーブルを作ったりする必要が出てきますか? よろしくお願いします。

  • アクセスの住所入力支援が途中で働かなくなりました。どうして?

    教えてください。 アクセス2000使っています。 住所入力支援(郵便番号を打つと住所が出てくる機能)を使って住所録を作っています。が、途中でこの機能が使えなくなってしまいました。 まだ、たくさん打ち込みたいので困ってます。 途中で、フィールドの追加をしたり、フォームで入力したいと思い作成したりして 手を加えました。これも問題なんでしょうか? 教えてください。宜しくお願いします。

専門家に質問してみよう