• ベストアンサー

MATCH関数について教えてください。

画像にあるようなデータがあるとします。 AかBかDの欄に”○”が記入されている方の名前を抽出したいです。 とりあえず、MATCH関数を出していますが、これ以外の関数で同じ抽出が出来れば教えてください。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

現状は F4=IF(MATCH("○",B4:E4,0)=3,"",A4) でしょうか? F4=IF(COUNTIF(B4:E4,"○")-COUNTIF(D4,"○")>0,A4,"") または F4=IF(OR(B4="○",C4="○",E4="○"),A4,"")

その他の回答 (3)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.4

>とりあえず、MATCH関数を出していますが、これ以外の関数で同じ抽出が出来れば教えてください。 もし、MATCH関数で抽出できているなら、それで具体的にどのような問題があるのでしょうか? 質問の意味が、該当する名前を詰めて表示したいということなら以下のような関数で表示できます。 =INDEX(A:A,SMALL(INDEX((($B$4:$B$100="○")+($C$4:$C$100="○")+($E$4:$E$100="○")=0)*1000+ROW($A$4:$A$100),),ROW(A1)))&""

noname#204879
noname#204879
回答No.3

別解として、添付図参照(フィルタオプションの設定)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

F列を作業列としてF4セルには次の式を入力して下方にオートフィルドラッグします。 =IF(AND(COUNTIF(B4:E4,"○")>0,COUNTIF(D4,"○")=0),MAX(F$3:F3)+1,"") 抽出された名前をH4セルから下方に表示させるのでしたら、H4セルには次の式を入力して下方にオートフィルドラッグします。 =IF(ROW(A1)>MAX(F:F),"",INDEX(A:A,MATCH(ROW(A1),F:F,0)))

関連するQ&A