質問: excelで1セル内の住所を市郡町街と丁目以下の地番等に分離する方法は? sheet1のa列に例えば群馬県内の住所のリストがあります。(架空の住所です。) 前橋市池端町3-2-21......(セルa1) 桐生市黒保根町水沼7-3-5 高崎市大沢町1-18-204 沼田市佐山町8-6-5-402 勢多郡北橘村下箱田396 多野郡吉井町岩井27-5 以下1,000件程度 sheet2のa1:b1538に郵政公社からダウンロードした群馬県内の郵便番号一覧表があり、a列に市郡町街大字等、b列に対応する郵便番号があります。(名前定義を仮に「〒」とします) sheet1の住所の郵便番号を検索する必要がありますが、そのためには住所の丁目地番より左の部分(市郡町街大字等)を分離しなければなりません。 これをマクロを使わずに1個の計算式で表示したいといろいろ工夫しましたが、どうもいい知恵が浮かびません。仕方なく一旦b列(b1)に =substitute(substitute(substitute(substitute(substitute(substitute(substitute(substitute(a1,9,1),8,1),7,1),6,1),5,1),4,1),3,1),2,1) という長たらしいネスト式を使って「2~9」の数値をすべて「1」に置き換え、 c列(c1)に =left(a1,find(1,b1)-1) と計算式を入れて市郡町街大字等を抽出し、d列(d1)に vlookup(c1,〒,2,false) と入れてようやく郵便番号を検索しております。 結果としてはこれで正しい答は出るのですが、標準搭載の関数だけで(マクロを使わずに)何かもっと簡単な方法がありはしないかという気がしてなりません。 ご存知の方があればどうか教えてください。(os等はwinme→excel2000proです。)
回答: 数字を境目にするなら http://www.kotaete-net.net/bbs04007.aspx?intdlgmode=1&strqa_year_threadid=q200532263 細かく分けるなら http://www.okweb.ne.jp/kotaeru.php3?q=501935&rev=1