WorkSheet関数で配列を使う その9

こんにちは。伊川(@naonaoke)です。

今回は配列を使って、住所と番地を分けます。

また、ご視聴者様からのご指摘も合わせて紹介をします。





MIN関数

範囲内の最小値を求める関数です。

このMIN関数を使って住所と番地を分けます。




住所と番地を分ける 作成手順その1 データベース確認


今回のミッション
北海道札幌市ススキノ
1-1-1

このように分けます。




住所と番地を分ける 作成手順その2 数式を仕込む


この数式で、住所と番地を分けることができます。

ただし、この数式は、番地が、半角でなければ反応しません。

この数式の意味は、音読が厳しいかもしれません。


上の図の部分が、配列になっています。

0~9までが、配列になっていて、1つの箱に入っています。

配列を使って、数字を1個ずつ参照しているのです。




住所と番地を分ける 作成手順その3 ご視聴者様からのご指摘

1812 will さんのコメント
また、このような抽出をするときには
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,””)です。




住所と番地を分ける 作成手順その4 ASC関数を使うと半角、全角も解決


ご視聴者様から、ご指摘をいただけるとは有り難いです。

上記の数式ですべて解決しました。




ここがポイント

ここがポイント
Function8.png
最近、毎日配列をブログに掲載しています。VBAの漸進の知識にもなります。

数式だからといって、バカにしてはいけません。

業務では、WorkSheet関数は、インスタントの配列でしかありません。

でも、使いこなせると便利です。

 




まとめ

WorkSheet関数で配列を最近、ブログで記載していますが、VBAの知識も深まった気がします。

配列は重要なので、頑張ってみなさんのスキルにしましょう。





今回のサンプルファイルはありません

サンプルファイル
VBAを勉強中の悩みを解決
  • なんで動かないの?
  • もうやだ!
  • どこにも情報がない!
スポンサーリンク

Twitterでフォローしよう

おすすめの記事