目次
WorkSheet関数で配列を使う その9
こんにちは。伊川(@naonaoke)です。
今回は配列を使って、住所と番地を分けます。
また、ご視聴者様からのご指摘も合わせて紹介をします。
MIN関数
範囲内の最小値を求める関数です。
このMIN関数を使って住所と番地を分けます。
住所と番地を分ける 作成手順その1 データベース確認
今回のミッション
北海道札幌市ススキノ
1-1-1
1-1-1
このように分けます。
住所と番地を分ける 作成手順その2 数式を仕込む
この数式で、住所と番地を分けることができます。
ただし、この数式は、番地が、半角でなければ反応しません。
この数式の意味は、音読が厳しいかもしれません。
上の図の部分が、配列になっています。
0~9までが、配列になっていて、1つの箱に入っています。
配列を使って、数字を1個ずつ参照しているのです。
住所と番地を分ける 作成手順その3 ご視聴者様からのご指摘
1812 will さんのコメント
また、このような抽出をするときには
substitute(元の文字列,抽出した文字列,””)
が便利なので紹介してみてはいかがでしょうか
substitute(元の文字列,抽出した文字列,””)
が便利なので紹介してみてはいかがでしょうか
Mashuko Kirino さんのコメント
番地の部分が全角・半角でもASC関数を使用すれば解決しますよ。
また、番地部分のみの抽出は、SUBSTITUTE関数を使用します。
つまり、前者が=LEFT(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},ASC(A1)&1234567890))-1)で、後者が=SUBSTITUTE(A1,B1,””)です。
つまり、前者が=LEFT(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},ASC(A1)&1234567890))-1)で、後者が=SUBSTITUTE(A1,B1,””)です。
住所と番地を分ける 作成手順その4 ASC関数を使うと半角、全角も解決
ご視聴者様から、ご指摘をいただけるとは有り難いです。
上記の数式ですべて解決しました。
ここがポイント
ここがポイント
最近、毎日配列をブログに掲載しています。VBAの漸進の知識にもなります。
数式だからといって、バカにしてはいけません。
業務では、WorkSheet関数は、インスタントの配列でしかありません。
でも、使いこなせると便利です。
まとめ
WorkSheet関数で配列を最近、ブログで記載していますが、VBAの知識も深まった気がします。
配列は重要なので、頑張ってみなさんのスキルにしましょう。
今回のサンプルファイルはありません
毎日の業務が、3時間短縮できます
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。