- ベストアンサー
Access2013 住所録の都道府県を削除
Access2013 フィールド(短いテキスト)に住所を「東京都大田区糀谷」や「神奈川県横浜市港南区」などと入力してある住所録があります。 これから、都道府県の表示を削除するクエリを教えて下さい。 宜しくお願いします。
- hasegawa-t
- お礼率28% (108/377)
- その他MS Office製品
- 回答数6
- ありがとう数1
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
とりあえず、都道府県マスターテーブルを作成する。 (これは、将来、「住所」フィールドを「都道府県」とそれ以降に分割する場合にも役に立ちます。) テーブル名 都道府県マスター フィールド名 都道府県コード 都道府県 都道府県コードは下記を参考に。 http://www.shift-the-oracle.com/etc/database/jis-x-401.html 住所録テーブルからクエリを作成して、フィールドに下記の式を設定すれば、都道府県を削除した表示になります。 住所1: Mid([住所],Len(DLoopUp("都道府県","都道府県マスター","'" & [住所] & "' Like [都道府県] & '*'"))+1)
その他の回答 (5)
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
補足:自作関数のクエリへの組み込みサンプル 修正1、市区町村抜き出しでなく住所分割に機能を修正。 修正2、CutStr()ではなくMid()を利用。 修正3、ヒットしなかった時の戻り値をもセット。 Public Function dividedAddress(ByVal strJusho As String, Optional Dividion As Integer = 2) As String Dim I As Integer Dim J As Integer Dim N As Integer Dim strTODOFUKENS() As String strTODOFUKENS() = Split("東京都,神奈川県", ",") N = UBound(strTODOFUKENS()) J = -1 For I = 0 To N If strJusho Like strTODOFUKENS(I) & "*" Then strJusho = Mid(strJusho, Len(strTODOFUKENS(I)) + 1) J = I Exit For End If Next I dividedAddress = IIf(Dividion = 1, IIf(J <> -1, strTODOFUKENS(J), ""), strJusho) End Function これは、添付図の要領でクエリに組み込みます。 住所2: dividedAddress([住所]) <---- ,2 は不要です。
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
補足の補足:ヒットしない場合は引数を戻すべきかも・・・。
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
補足: 現実的な方法の具体例 晩酌しながらチャッチャと考えたのでバグがあるやも。次のような都道府県を消す関数を作るというのが仕掛けです。 Public Function eraseTODOFUKEN(ByVal strJusho As String) As String Dim I As Integer Dim N As Integer Dim strTODOFUKENS() As String strTODOFUKENS() = Split("東京都,神奈川県", ",") N = UBound(strTODOFUKENS()) For I = 0 To N If strJusho Like strTODOFUKENS(I) & "*" Then EraseTODOFUKEN = CutStr(strJusho, strTODOFUKENS(I), 2) Exit Function End If Next I End Function 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
- world-3000
- ベストアンサー率0% (0/4)
VBAで正規表現を使えばできます。 詳しくはネット等で調べて下さい。
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
【失敗するだろうやり方】 都、府、県などを検索してその後を抽出する手法は、都城市・別府市などがあるので完璧ではない。 【成功するだろうやり方】 都道府県名一覧と住所の冒頭を比較する方法。だが、仕掛けなしには実現不能という難点がある。 【現実的な方法】 住所の登録を、都道府県、市町村等に分割する。 と、思います。
関連するQ&A
- Accessで住所分割 並び順で問題?
Accessで住所を4項目(都道府県・市区町村・町域・その他)に 分割しようとしていますが、市区町村の分割がうまくいきません。 並び順に問題がある気がしているのですが ご教授いただけると助かります。 ■マスタ登録状況■■■■■■■■■■■■■■■■■■■ ※日本郵政HPから郵便番号一覧をダウンロードし以下を用意 ○都道府県一覧 都道府県 --------- 東京都 神奈川県 ○市区町村一覧 ※市区町村が(以下にない場合)などのデータは削除済 都道府県 市区町村 ----------------------- 神奈川県 横浜市金沢区 神奈川県 横浜市 ○市区町村一覧 ※町域が(以下にない場合)などのデータは削除済 都道府県 市区町村 町域 ---------------------------------------- 神奈川県 横浜市金沢区 福浦 神奈川県 横浜市金沢区 平潟町 神奈川県 横浜市 中区新山下 ■処理フロー■■■■■■■■■■■■■■■■■■■ 【実行前】住所一覧 ワーク 都道府県 市区町村 町域 ---------------------------------------------------- 神奈川県横浜市金沢区福浦*-*-* (1)都道府県分割クエリ実行 ・都道府県をセット ・ワークから都道府県を削除 【クエリ(1)後】住所一覧 ワーク 都道府県 市区町村 町域 ---------------------------------------------------- 横浜市金沢区福浦*-*-* 神奈川県 (2)市区町村分割クエリ実行 ・市区町村をセット ・ワークから市区町村を削除 【クエリ(2)後】住所一覧 ワーク 都道府県 市区町村 町域 ---------------------------------------------------- 福浦*-*-* 神奈川県 横浜市金沢区 (3)町域分割クエリ実行 ・町域をセット ・ワークから町域を削除 【クエリ(3)後】住所一覧 ワーク 都道府県 市区町村 町域 ---------------------------------------------------- *-*-* 神奈川県 横浜市金沢区 福浦 !!!!!クエリ(2)市区町村分割で困っています!!!!! ■クエリ実行結果■■■■■■■■■■■■■■■■■■■ 欲しい結果↓ ワーク 都道府県 市区町村 町域 ---------------------------------------------------- 福浦*-*-* 神奈川県 横浜市金沢区 現状↓ ワーク 都道府県 市区町村 町域 ---------------------------------------------------- 金沢区福浦*-*-* 神奈川県 横浜市 ■クエリSQL■■■■■■■■■■■■■■■■■■■ クエリ(2)市区町村分割(1) ※市区町村をセット UPDATE 住所一覧, 市区町村一覧 SET 住所一覧.市区町村 = 市区町村一覧.市区町村名 WHERE (((住所一覧.ワーク) Like 市区町村一覧.市区町村 & "*") AND ((住所一覧.都道府県)=市区町村一覧.都道府県名)); クエリ(2)市区町村分割(2) ※ワークから市区町村を削除 UPDATE 住所一覧 SET 住所一覧.ワーク = Replace(住所一覧.ワーク,住所一覧.市区町村,"") WHERE (((住所一覧.市区町村) Is Not Null)); 市区町村一覧の並び順を降順にしたり、 間に選択クエリをはさんでLen(市区町村)で降順にしたり、 「横浜市金沢区」が「横浜市」より先に来るようにしていますが うまくいきません。 長文ですがどうぞよろしくお願い致します。
- ベストアンサー
- その他(データベース)
- Access2007 フィールドで任意の文字を削除
以下のクエリがあります フィールド1:[都道府県] テキスト型 フィールド2:[市区郡] テキスト型 フィールド3:[住所(都道府県から始まる住所)] テキスト型 ★フィールド3の住所は、「都道府県」、「市区郡」を除いて表示させたいと考えています。 フィールド1、2の文字を除くという指定をすればよいと考えているのですが、どの様な数式を使えば 出来るのか分かりません。 (実現させたい例) [東京都] [千代田区] [東京都千代田区○○町○○番地] ↓ [東京都] [千代田区] [○○町○○番地] どなたか対処法についてご存じの方がいらっしゃいましたら、ご教授下さい。 何卒よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Access で重複データを削除
Access2010を使用しています。フィールドが2個あります。【都道府県名フールド】【市区町村名フィールド】です。 都道府県フールドには、重複データが有ります。【東京都 品川区】【 東京都 大田区】【千葉県 市川市】【千葉県 船橋市】・・・・】このような重複データがある時に、エクセルの【データ 重複の削除】の様な結果が欲しい。実行後は【東京都 品川区】【千葉県 市川市】です。*エクセルの重複の削除は最初の行が残ると有りました。簡単な方法をお願い致します。現在実施している方法はアクセスで、エクセルでエクスポートして、【データ データの削除】を実施しています。 ※OKWAVEより補足:「ひかりTVのサービスやISPぷらら」についての質問です。
- ベストアンサー
- その他(趣味・娯楽・エンターテイメント)
- 履歴書の現住所と本籍の書き方
履歴書を書く場合、現住所の欄では県名から書く(例えば「神奈川県 横浜市~」)のが正式でしょうか?それとも都道府県は入れないで市 から書いてもいいのでしょうか? または、どちらでもいいのでしょうか? 昔、本籍は「神奈川県横浜市~」のように都道府県を入れて書き、現 住所は「横浜市~」のように都道府県は入れなくても良いと教えられ た気がします。勘違いでしょうか? 因みにすんでるところは政令指定都市です。 よろしくお願いします。
- ベストアンサー
- その他(暮らし・生活お役立ち)
- ACCESSで都道府県の抽出
ACCESSで住所録の住所フィールドから都道府県を抽出し、同じテーブルの都道府県フィールドに入れたいのですがどのようにしたら良いのでしょうか?
- ベストアンサー
- オフィス系ソフト
- ACCESSで住所を分割したい。
Accessにて住所入力されているフィールドを郵便番号変換される部分とそれ以降に分割したいのですが、お分かりになる方教えてください。 (例)〒143-0016 東京都大田区大森北×××-××× と入力されているデータを 東京都大田区大森北 と ×××-××× にすることは可能なのでしょうか。
- ベストアンサー
- オフィス系ソフト
- 入力された住所から都道府県の後ろにある空白を削除
例 ○○県 〇〇市〇〇町1-1 マンション1号室 ○○県 〇〇市〇〇町1-1マンション2号室 ○○県〇〇市〇〇町1-1マンション3号室 上記の例ような都道府県の後ろや番地の後ろに空白があったりなかったりする住所が格納されている配列があります 都道府県の後ろの空白だけ削除してそれ以降の空白は無視したいです replace(' ','')では都道府県の部分以外の空白も削除されてしまうので困っています
- ベストアンサー
- Python
- Excelで住所の表示について
次のようにしたいのですがあまり複雑にならない方法を教えて下さい 東京都渋谷区*** 神奈川県相模原市*** 北海道札幌市*** と住所表示があります、これを別のCELLに貼り付け転記し 渋谷区*** 相模原市*** 札幌市*** の様に都道府県を削除したいのです、都道府県名のみを取り出し表示することはできたのですが 削除することができません、よろしくお願いいたします。
- ベストアンサー
- Excel(エクセル)
- Access のパラメータクエリについて
お世話になります。 Accessでクエリを作成する練習をしています。 住所フィールドを含むクエリを基にして、住所フィールドにパラメータを設定するクエリを作成しています。 住所フィールドには、東京都で始まる住所、千葉県で始まる住所そして埼玉県で始まる住所が多数入力されています。 「パラメータの入力」ダイアログボックスに、ワイルドカードを使用して“東京都*”と入力して、クエリを実行すると1件も抽出できません。 パラメータには、ワイルドカードを使用できないのでしょうか。 または、他に理由があるのでしょうか。 よろしくお願いします。 OS: Windows 7 Office:2010
- ベストアンサー
- その他MS Office製品
- Accessフォーム 大分類→小分類を選択したい
Access初心者です。 ほかの類似の質問を検索して試してみたのですが、 どうしても同じようにできません。 もう1週間も同じところでつまづいています。 どなたか、初心者にもわかるように教えていただければ幸いです。 以下のようなテーブルがあるとします。 [都道府県] [市区町村] 東京都 新宿区 東京都 港区 東京都 渋谷区 神奈川県 横浜市 神奈川県 川崎市 神奈川県 藤沢市 埼玉県 さいたま市 埼玉県 熊谷市 埼玉県 三郷市 フォーム上で、 [都道府県]のコンボボックスで東京都を選んだ場合、 [市区町村]のコンボボックスには「東京都」の市区町村名が 選択できるようにしたいのですが、 一番最初のところで行き詰っています。 コンボボックスウィザードにしたがって [都道府県]のコンボボックスを作成すると、 [東京都] [東京都] [東京都] [神奈川県] [神奈川県] [神奈川県] … というリストが出てきてしまいます。 過去の質問を検索し、プロパティの値集合ソースで、 SELECT[都道府県]…FROM[テーブル名]の後に、 GROUP BY[都道府県]と書き加えたのですが、 こうするとリストが出てこなくなります。 いったいどうしたらよいのでしょうか。 ほとほと困っています。 どうかご教示ください。お願いいたします。
- ベストアンサー
- その他(データベース)
お礼
ありがとうございます