|
▼クロ さん、neptuneさん:
アドバイスまことにありがとうございました。
大、大、大進歩であります。
マクロをやめ、爺さんのEXCEL式を参考にシート上で変換行なうことにしました。
1行目はタイトル。
A1 変換前住所
B1 都道府県
C1 市区郡
E1 区町村
G1 地名・字名・番地
I1 作業セル1
J1 作業セル2
2行目は次のとおり。
A2 変換前住所を入れるところ
B2 =LEFT(A2,4-SUM((MID(A2,3,1)={"都","道","府","県"})*1))
C2 =IF(B2="東京都",IF(COUNT(FIND({"東村山","武蔵村","羽村市"},LEFT(I2,3))),LEFT(I2,FIND("市",I2)),LEFT(I2,MIN(FIND({"市","区","町","村"},I2&"市区町村",2)))),IF(COUNT(FIND({"今市市","四日市","八日市","廿日市"},LEFT(I2,3))),LEFT(I2,FIND("市",I2,FIND("市",I2)+1)),IF(IF(COUNT(FIND({"蒲郡市","大和郡","小郡市"},LEFT(I2,3))),"市",IF(COUNT(FIND({"余市郡","高市郡"},LEFT(I2,3))),"郡",MID(I2,MIN(FIND({"市","郡"},I2&"市郡",2)),1)))="市",IF(COUNT(FIND({"札幌市","仙台市","千葉市","横浜市","川崎市","名古屋","京都市","大阪市","神戸市","広島市","北九州","福岡市"},LEFT(I2,3))),LEFT(I2,FIND("区",I2)),LEFT(I2,FIND("市",I2,2))),IF(COUNT(FIND({"佐波郡玉村","恵那郡岩村","東宇和郡野","杵島郡大町","北松浦郡鹿"},LEFT(I2,5))),LEFT(I2,FIND("郡",I2)+3),LEFT(I2,MIN(FIND({"町","村"},I2&"町村",FIND("郡",I2)+2)))))))
E2 =RIGHT(J2,LEN(J2)-(LEN(B2)+LEN(C2)))
G2 =RIGHT(A2,LEN(A2)-LEN(J2))
I2 =RIGHT(A2,LEN(A2)-LEN(B2))
J2 =LEFT(A2,MIN(FIND({0,1,2,3,4,5,6,7,8,9},ASC(A2)&1234567890))-1)
その結果、千葉県市川市妙典1-2は、「千葉県」「市川市」「妙典」「1-2」になりました。
ありがとうございました。
ですが、もうひとつあるのです。
政令指定都市の場合、いまのままですと次のようになります。
千葉県千葉市緑区おゆみ野1-1は、「千葉県」「千葉市緑区」「おゆみ野」「1-1」
実は政令指定都市のときだけ以下のようにしたいのです。
千葉県千葉市緑区おゆみ野1-1は、「千葉県」「千葉市」「緑区」「おゆみ野1-1」
考えてみていますが困難です。よいアドバイスがありましたらお願いします。
|
|