例:A1に部署を入力したら、その部署に所属する人をA2セルで選択できるようにする。
準備:ヘッダー名に部署。その下に名前を入れたテーブルを作成する。
部署 | 名前 |
部署A | 佐藤 |
部署 | 名前 |
このセルに入力規則をつける |
=INDIRECT("テーブル[" & $A$1& "]")
ただし、テーブル内に空欄があると入力規則に合致していなくてもエラーにならないので注意。
範囲を絞ることで対応します。それでも行間に空欄がある場合は対応できません。また、入力規則には255文字制限があるので注意。
=OFFSET(INDIRECT("部署テーブル[" & INDIRECT("入力テーブル[@部署]") & "]"),0,0,LOOKUP(2,1/(INDIRECT("部署テーブル[" & INDIRECT("入力テーブル[@部署]") & "]")<>""), ROW(INDIRECT("部署テーブル[" & INDIRECT("入力テーブル[@部署]") & "]")))-1,1)
また、入力規則にはLETを使えないので、冗長にはなってしまうがこのように書くしかありません。文字数が225を超えてしまう場合は、セルに外だしして、そのセルを参照することである程度文字数削減が可能です。
コメント