- ベストアンサー
Excel関数で住所の支部番号を表示する方法
- Excel関数を使用して住所の支部番号を表示する方法をご紹介します。
- ExcelのIF関数とVLOOKUP関数を組み合わせることで、住所の「123市」の支部番号まで表示することが可能です。
- 具体的な手順としては、「123市」の場合は参照シートの表(2)の範囲から番号を検索し、それ以外の市町村の場合は参照シートの表(1)の範囲から番号を検索します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
なんとなく分かりました。 別表は ◎◎ | 001 △△ | 002 「|」はセル区切りのような感じで 参照シート!$Z$2:$AA$8 に リストアップされているのですね。 セルAA6には市の入力 セルAB6には市を含む全住所の入力となっているのですか? その場合はちょっと複雑です VLOOKUP関数の一つ目のパラメータを確定させる方法が問題ですね。 セルAA6の「123市」以降の文字をいくつか取得して パラメータとして採用する方法が良いと思われます。 ただ、何文字取るかは支部の名前によって重複しないようにしなければ成りません。 下記は「123市」以降の文字を3文字取ってパラメータ化する方法です。 =IF(AA6="123市",VLOOKUP(MID(AB6,LEN(AA6)+1,3)&"*",参照シート!$Z$2:$AA$8,2,FALSE),VLOOKUP(AA6,参照シート!$T$2:$U$36,2,FALSE)) AA6が12「123市」だった場合に、AB6の全住所から 「123市」分の文字数「LEN(AA6)」を飛ばして3文字取得し その後の文字はワイルドカード(*)で評価させる方法です。 この場合注意が必要なのは「123市」以降の文字が3文字以上無いと エラーとなります。 上記関数における条件 ※支部の名称の一部をパラメータとして使うために 重複しない部の名称の先頭からの文字数を決める。 この時に決めた文字数より短い支部名があるとエラーとなります。 ※AB6に市からの全住所が入力されていること 都道府県名などが入っている場合や市名称がない場合はN/Aになります。
その他の回答 (2)
- chuchuo
- ベストアンサー率45% (99/217)
支部ごとにさらに市町村番号のテーブルがあって その場所を返すのですか? 例えば、123市が入力された時だけ、AB6の記入に基づいて番号を返す それとも、支部の番号001~006の番号を返すだけですか?
- KURUMITO
- ベストアンサー率42% (1835/4283)
次のような式に変えてはいかがでしょう。 =IF(AA6="*123市*",VLOOKUP("*"&AA6&"*",参照シート!$Z$2:$AA$8,2,FALSE),VLOOKUP(AA6,参照シート!$T$2:$U$36,2,FALSE))
お礼
いろいろな考え方を持つことができました。 ありがとうございました。
補足
補足します。 AA6が123市以外の時は別表(1)「市町村番号表」の市町村番号を返します。 ↑これはうまく表示できました。 AA6が123市の時は別表(2)「支部番号表」の支部番号を返したいのです。 ↑これが123市の時は『#N/A』のエラー表示になります。 別表は◎◎-001、△△-002のような表になっています。 001,002等の番号を返したいのです。 住所から支部を検索させたいのですが、どのように式に組み込めばいいのか教えてください。 うまく説明できず、すみません。