• ベストアンサー

エクセルで2つの条件が一致するものを抽出

エクセルで2つの条件が一致するものを抽出し印を付けたいのですが…    A   B   C  1  100  1.5  あ 2  100  1.5  い 3  200  1.5  あ 4  100  1.2  い のようになデータがあり、AとB共一致するもののDに○(この場合1Dと2Dに○…数字でもいいですが)を表示させたいのですが… いろいろ検索してもわかりません。 どなたか、よろしくお願いします。

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

  • ベストアンサー
  • 135ok
  • ベストアンサー率34% (26/75)
回答No.5

作業列を作ってもいいのであれば  A B C D E 1 100 1.5 あ 100&1.5 ○ 2 100 1.5 い 100&1.5 ○ 3 200 1.5 あ 200&1.5  4 100 1.2 い 100&1.2  D1 =A1&"&"&B1  "&"のところは、*以外の文字    *AとBをつなげる。 E1 =IF(COUNTIF(D:D,D1)>=2,"○","")    *D列の文字を基準に、表示の有無を決める。

ponpa22
質問者

お礼

ありがとうございます。 まずは、これで遣ってみようと思います。

その他の回答 (5)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.6

>し印を付けたいのですが のしるし付けと >致するものを抽出 の抽出とは違うものだ。どっちかはっきりすること。 ーーーー 例データ A1は第1条件値、B1は第2条件値 200 あ A B C 100 1.5 あ 100 1.5 い 200 1.5 あ 1 100 1.2 い 200 2.9 あ 2 200 1.9 あ 3 D3は作業列で =IF(AND(A3=$A$1,C3=B$1),MAX($D$1:D2)+1,"") 下方向に式を複写 結果 上記D列 これを抜き出す方法は、Googleで「imogasi方式」で照会してください。たびたび同じ型の質問あり。詳しくは略。 Sheet2のA2に =INDEX(Sheet1!$A$1:$C$100,MATCH(ROW()-1,Sheet1!$D$2:$D$100,0),COLUMN()) C2にまで式を複写。 A2:C2をA4:C4まで式を複写。 100 1.5 い 100 1.2 い 200 2.9 あ

ponpa22
質問者

お礼

ありがとうございます。 私には少し難しそうですが、やってみます。 ありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

こんばんは! 参考になるかどうか判りませんが・・・ 一例です。 A列とB列を参照して、同じ物が複数ある場合の方法です。 番号で分けるようにしてみました。 ↓の画像では3種類同じ物があり、それを数字で分けるようにしています。 右側の表は作業するための表です。 まず、D列に結果表示させるための連番を付けておきます。 (数字でなくA・B・C・・・というようにしても構わないと思います。) G2セルは単純に =A2&B2 H2セルは =IF(G2="","",IF(COUNTIF($G$2:G2,G2)=2,ROW(A1),"")) I2セルは =IF(COUNT($H$2:$H$1000)>=ROW(A1),INDEX($G$2:$G$1000,SMALL($H$2:$H$1000,ROW(A1))),"") という数式を入れ、G2~I2セルを範囲指定し、I2セルのフィルハンドルでオートフィルで下へコピーします。 (数式が1000行まで対応していますので、1000行くらいまでコピーしても構いません) 最後にD2セルに =IF(COUNTBLANK(A2:C2)>0,"",IF(ISERROR(INDEX($F$2:$F$1000,MATCH(A2&B2,$I$2:$I$1000,0))),"",INDEX($F$2:$F$1000,MATCH(A2&B2,$I$2:$I$1000,0)))) という数式を入れ、オートフィルで下へコピーすると 画像のような感じになります。 これでA・B列で一致しているものが3種類あり、1~3の数値でそれぞれを表すようにしています。 以上、参考になれば幸いですが、 的外れの場合は読み流してくださいね。m(__)m

ponpa22
質問者

お礼

ありがとうございます。まずは&を使用して、次にこの方法でやってみたいと思います。ありがとうございました。

  • minosennin
  • ベストアンサー率71% (1366/1910)
回答No.3

作業セルを使っていいのなら次の方法もあります。 E列を作業列として、A列とB列を結合させる。 E1に =TEXT(A1,0)&TEXT(B1,"#.0") 最終行までドラッグ D1に =IF(COUNTIF(E:E,E1)>1,"○","") 最終行までドラッグ

ponpa22
質問者

お礼

ありがとうございます。 まずは、これで遣ってみようと思います。

回答No.2

こういう事ではなくて? =IF(A1=B1,"○","")

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

Aが100でBが1.5のものを探して、○をつけるというのなら、 =IF(SUMPRODUCT((A1=100)*(B1=1.5)),"○","") でいいだろうが、 AがなんだかわからなくてBもなんだかわからないが、それぞれ一致するものを探せといわれると、簡単ではないように思うが。

ponpa22
質問者

補足

早速ありがとうございます。「AがなんだかわからなくてBもなんだかわからないが」です。但し、両方とも数値です。

関連するQ&A