• ベストアンサー

Excelの関数について教えて下さい。

Excelの関数について教えて下さい。 表のように、ア・イ・ウ が、2008年~2010年のいつ「A」だったかを調べたいのですが、この方法が分かりません。 HLOOKUPを使って、「A」が範囲内にあるかどうかは出来たのですが、それが何年のことか、つまりその「A」だった列名(「2010」「2009」「2008」)を返したいのです。 簡単なことのような、実は関数では難しいような、よく分からず…よろしくお願いします。

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

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.4

◆こんな方法もありますよ B2=IF(COUNTIF(C2:E2,B$1),LOOKUP(10^10,$C$1:$E$1/(C2:E2=B$1)),"")

aqqa102
質問者

お礼

実は質問の事例から派生して、「A」だけでなく「B」「C」も混在する行を、各々に該当するかどうか別列で検索させようと考えていたところです。 この方法だと、その別列の名称を使えるので式のメンテも不要ですし便利だと思い、ベストアンサーとさせて頂きます。 この場を借りて、皆様から教わり勉強になったこと、感謝致します。

その他の回答 (3)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

一例です。 =IF(COUNTIF($B2:$D2,"A"),INDEX($B$1:$D$1,,MATCH("A",$B2:$D2,0)),"")

aqqa102
質問者

お礼

早々のご回答ありがとうございます。 ご提示の式でそのまま解決してしまいました。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

A列 B列 C列 D列 A  2010 2009 2008     A           A        A A2: =IF(COUNTIF(B2:D2,A$1), INDEX($B$1:$D$1, MATCH(A$1,B2:D2, 0), "") MATCH関数でイチを調べ,その位置の値をINDEX関数で採取します。 VLOOKUP関数に出来ない「キー列の左」とかHLOOKUP関数で「キー行の上」を取ってきたい時に使う標準的な組み合わせなので,練習しておいてください。

aqqa102
質問者

お礼

ものすごく早いご回答ありがとうございました。参考にさせて頂きます。

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

列名がC1:E1、「A」という列名がB1、データがC2:E4に入力してあるとして B2のセルに =INDEX($C$1:$E$1,MATCH($B$1,C2:E2,0)) の様に入力して、B4までコピー

aqqa102
質問者

お礼

ものすごい早いお返事ありがとうございます。参考にさせて頂きます。

関連するQ&A

専門家に質問してみよう