- ベストアンサー
エクセルのドロップダウンリスト
こんにちは。エクセルで入力規則からドロップダウンリストを作成するときの質問です。リストの元の値を名前定義で指示しているのですが、リスト内容を後から追加できるように名前定義の範囲を現在値が入力されている範囲を超えて空白セルもいくつか一緒に定義しています。 このとき、ドロップダウンリストには当然名前で定義されたリストが出るのですが、空白も一緒に出てきます。 質問は、この空白を無視(値が入力されている範囲だけ)してリスト表示できないかということです。あるいは、空白がリストに含まれてでるのですがその際にリストが一番上でなく真ん中あたりが最初に表示され、つまりリストの▼を押した段階で空白リスト、その後スライドバーでリスト上部を表示させて選択する形になっているのですが、いきなり最上部のリストが表示される方法でも構いません。 よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
方法1.名前の範囲の先頭を空白のセルにする。 これなら空白を選択した場合に列の先頭が表示されます。 方法2.名前定義に数式を使う Sheet2!A:Aを対象にするなら「挿入」「名前」「定義」で 「=OFFSET(Sheet2!$A$1,0,0,COUNTA(Sheet2!$A:$A),1)」 とすればA1からA列上のリスト数をカウントして表示してくれます。 ※この場合、中間に空白が出ないように調整してください。
その他の回答 (2)
- mu2011
- ベストアンサー率38% (1910/4994)
リスト名の参照範囲を次の様にすれば、空白は不要ですが如何でしょうか。 リストがA列に見出し行なしの場合、=OFFSET($A$1,0,0,COUNTA($A:$A),1) リストがA列に見出し行ありの場合、=OFFSET($A$2,0,0,COUNTA($A:$A)-1,1)
- suekun
- ベストアンサー率25% (369/1454)
リストがA1セルから縦に並んでいるとします。 A 1 あ 2 い 3 う 4 5 この場合、リストの元の値の欄に =$A$1:OFFSET(A1,COUNTA(A1:A10)-1,0) と入力して下さい。 但し、COUNTAの範囲は増えるであろう範囲を先に見越して 広く取って置いてください。 これで入力されている範囲しかリストには表示されません。