- ベストアンサー
リストの結果によって変わるリストの作成について
「入力規則」の「リスト」なんですが、こんな リストを作成することはできますでしょうか? たとえばこんな社員名簿を作ったとします。 セルA1に「男」 セルB1に「女」 セルA2からA10に男性社員の名前 セルB2からB10に女性社員の名前 この表を使ってセルC1に入力規則のリストを作成し「男・女」 を選択できるようにします。 次にセルC2にはセルC1が「男」なら男性社員、「女」なら女性社員 の名前がリストになるようにします。 ここまでは範囲の名前付け(A2からA10の範囲に「男」、B2からB10 の範囲に「女」と名前付け)とINDIRECT関数を使ってできました。 ここからなんですが 社員の名前は後から増えてもいいように範囲を多くとっています。 セルA2からA10までを男性社員の名前が入るようにしているのですが 実際名前が入力されているのはA2からA5までです。 この場合名前のリスト範囲をA2からA10までにするとA6からA10の 空白のセルまでリスト表示されてしまいます。 そこで =OFFSET($A$2,,,COUNTA($A$2:$A$10)) を併用したいのですが 「挿入」→「名前」→「定義」のところで「男」 の参照範囲を「=OFFSET($A$2,,,COUNTA($A$2:$A$10))」 にするとリストが表示されなくなりました。 説明が下手で長くなってしまいましたが 簡単に言うと セルC1に「男・女」のリストを作成。 セルC2にセルC1が「男」の場合男性社員の名前、 「女」の場合女性社員の名前をリスト表示させ さらに空白のセルはリストに表示させないようにしたいのです。 宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
C2 における[入力規則]の[元の値]ボックス内の式: =OFFSET(INDIRECT($C$1),,,COUNTA(INDIRECT($C$1)))
その他の回答 (1)
- fumufumu_2006
- ベストアンサー率66% (163/245)
C2の入力規則の元の値を =IF(C1="男",OFFSET(A2,,,COUNTA(A2:A10)),OFFSET(B2,,,COUNTA(B2:B10))) または 男=OFFSET(A2,,,COUNTA(A2:A10)) 女=OFFSET(B2,,,COUNTA(B2:B10)) で定義されていれば =IF(C1="男",男、女) ではどうでしょうか?
お礼
お礼が遅くなって申し訳ありませんでした。 おかげさまで無事解決できました♪ ありがとうございます。
お礼
お礼が遅くなって申し訳ありませんでした。 おかげさまで無事解決できました♪ ありがとうございます。