- ベストアンサー
エクセルの検索する関数について
エクセルで質問です。 sheet2のA、B列の中から、sheet1のA、B列で同じ組み合わせの数字を探す。同じ組み合わせで見つかれば、sheet1の見つかった列に、D列÷E列の数字をG列に表示する関数の式を教えてください。 関数は不慣れなので宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
シート1のG1に =IF(SUMPRODUCT((Sheet2!$A$1:$A$100=A1)*(Sheet2!$B$1:$B$100=B1)),D1/E1,"") といった式を入れます。 G1をコピーしてG2以下のセルに貼り付けます。 #別の方法:(推奨) シート1のH1に =A1&","&B1 と記入して表の下端までコピー シート2のH1に =A1&","&B1 と記入して表の下端までコピー シート1のG1に =IF(COUNTIF(Sheet2!H:H,H1),D1/E1,"") と記入して表の下端までコピー。
その他の回答 (2)
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =IF(ISNUMBER(MATCH(A1&B1,INDEX(Sheet2!A:A&Sheet2!B:B,),0)),D1/E1,"")
お礼
回答ありがとうございました。 また機会があれば、宜しくお願いします。
- imogasi
- ベストアンサー率27% (4737/17069)
2列に分かれてある、数か文字列をあわせて別2列の組み合わせの中で見つけるには、作業列に一旦1方で結合した値をセルに作らないと、関数ではむかしい。 そのとき1と23と12と3の結合が同じにならないよう、下記のようにする。 数で4桁と仮定する。 2列が文字列であるときも同じ事は、起こりにくいが、理屈上は起こる。 例データ Sheet1 A:F列 データ1 データ2 Sheet2の行 計数1 計数2 D/E 12 3 7 4 2 2 1 23 4 6 3 2 123 5 8 3 2.666666667 24 1 #N/A 6 2 C列は参考。 G列がF2に =IF(ISERROR(MATCH(TEXT(A2,"0000")&TEXT(B2,"0000"),Sheet2!$C$1:$C$100,0)),"",D2/E2) 下方向に式を複写する。 (参考までにC列 C2の式は=MATCH(TEXT(A2,"0000")&TEXT(B2,"0000"),Sheet2!$C$1:$C$100,0) この列はなくて良い) ーーー Sheet2 A,B列と作業列C列 32 34 00320034 12 13 00120013 1 23 00010023 123 01230000 451 1 04510001 12 3 00120003 C2の式は =TEXT(A2,"0000")&TEXT(B2,"0000") 下方向に式を複写。 この1列内をSheet1から検索する。
お礼
回答ありがとうございました。 また何度も躓いてますので また機会がありましたら宜しくお願いします。
お礼
返答が遅くなって申し訳ありません。 なんとか推奨のほうで出来ました。 また宜しくお願いします。 ありがとうございました。