- ベストアンサー
フィルタで選択した文字を、あるセルに表示する方法
こんにちは。いつも勉強させていただいています。 使用環境:EXCEL2007 OS:VISTA A3からD20までの範囲に、表があります。 A3 社員番号 B3 氏名 C3 交通費 D3 部署名 (フィルタを設定しています。) 今回ご相談したいのは、D列で選んだ「部署名」を A1セルに表示する方法です。 例を挙げますと、D列で「人事部」をフィルタで選択したら、 A1には 人事部 と表示。 また、D列で「営業部」をフィルタで選択したら、 A1には 営業部 と表示。 どなたかお知恵をお貸し下さい。 よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
SUBTOTAL関数を使うことでできるでしょう。ただし作業列を設けることが必要です。 A3セルからD3セルにはお示しの項目名が入力されていて各データは下行に入力されているとします。 そこで作業列としてE4セルから下方には1から2,3・・・と連続したデー数値を入力します。その際にはD列で営業部などの文字が入力されている最終の行までに数値を入力します。 D3セルを重点としてフィルタ操作が行われるわけですがA1セルには次の式を入力すればよいでしょう。 =IF(COUNTA(D4:D100)=SUBTOTAL(2,E4:E100),"",INDEX(D4:D100,SUBTOTAL(4,E4:E100)))
お礼
お示しいただいた関数で、うまく表示されました。 ご教示いただき、ありがとうございました。