• ベストアンサー

フィルタで選択した文字を、あるセルに表示する方法

こんにちは。いつも勉強させていただいています。 使用環境:EXCEL2007  OS:VISTA A3からD20までの範囲に、表があります。 A3 社員番号  B3 氏名  C3 交通費  D3 部署名 (フィルタを設定しています。) 今回ご相談したいのは、D列で選んだ「部署名」を A1セルに表示する方法です。 例を挙げますと、D列で「人事部」をフィルタで選択したら、 A1には 人事部 と表示。 また、D列で「営業部」をフィルタで選択したら、 A1には 営業部 と表示。 どなたかお知恵をお貸し下さい。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.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)))

noname#150782
質問者

お礼

お示しいただいた関数で、うまく表示されました。 ご教示いただき、ありがとうございました。