- ベストアンサー
Excelの表における組み合わせの数値を取得する方法
- Excelの表において、特定の組み合わせがあった時にその隣の数値を取得する方法を教えてください。
- 表にはランダムな数字が縦と横に配置されており、特定の組み合わせに対応する数値を取得したいです。
- 具体的には、D1のセルに5(または8)、E1のセルに8(または5)を入力した時に、F1のセルにC列の対応する数値を表示させたいです。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
No1です。質問を勘違いしていました。 D,E列にで指示した条件にあった行を探してC列の値を表示させたい。 C列は数値、条件に合う行は、1つであるとして、F1セルに =SUMPRODUCT((A$1:A$5&B$1:B$5=D2&E2)*C$1:C$5)+SUMPRODUCT((A$1:A$5&B$1:B$5=E2&D2)*C$1:C$5) 下へコピィしてみてください。
その他の回答 (4)
- abe_onesel
- ベストアンサー率52% (20/38)
#2です。 数式を分解してみました。 F1~J1をコピーして、F2~J5に貼り付けて下さい。 対象のデータがあれば、F列かG列のどちらかに数字が出て、それ以外はエラーになります。 F1=INDEX($C$1:$C$5,MATCH(J1,$H$1:$H$5,0)) G1=INDEX($C$1:$C$5,MATCH(I1,$H$1:$H$5,0)) H1=A1&"-"&B1 I1=D1&"-"&E1 J1=E1&"-"&D1 先ほどの回答は、上記の5列のデータをまとめて、エラーを消したのを2列で出しました。 私の解釈が間違っていなければ正しく出ると思いますが・・・ F列と一緒に、G列のデータも下にコピーしていますよね? 上記の式で、F列とG列の全部に『#N/A』出るようでしたら、私の解釈が違うのかもしれません。
1.セル F1 に次の[条件付き書式]を設定 数式が =ISERROR(F1) フォント色 白 2.セル F1 に次の配列数式を入力して、此れを下方にズズーッとドラッグ&ペースト {=INDEX(C$1:C$5,MATCH(1,((A$1:A$5=D1)+(A$1:A$5=E1))*((B$1:B$5=D1)+(B$1:B$5=E1)),0))}
- abe_onesel
- ベストアンサー率52% (20/38)
F1セルに、 =IF(ISNA(MATCH(D1&"_"&E1,G:G,0)),IF(ISNA(MATCH(E1&"_"&D1,G:G,0)),"対象無",INDEX(C:C,MATCH(E1&"_"&D1,G:G,0))),INDEX(C:C,MATCH(D1&"_"&E1,G:G,0))) G1セルに、 =A1&"_"&B1 として、F1セルとG1セルを下までコピー 少し長い式ですが、補助列としてG列を使用しています。 A列とB列の数字が、一桁か二桁以上になるかがわからなかったので、二桁以上に対応するようにしています。 このような感じでいかがでしょうか?
お礼
アドバイス有り難う御座います。 数式を貼り付けて行ってみましたが? 上手くいきません? 私が希望していることは、かなり難しいことなのでしょうか?
- hallo-2007
- ベストアンサー率41% (888/2115)
F1セルに =IF(OR(A1&B1=D1&E1,A1&B1=E1&D1),C1,"") 下までコピィ 一応動作確認してください。
補足
アドバイス有難うございます。 =IF(OR(A1&B1=D1&E1,A1&B1=E1&D1),C1,"") 簡単な表を作って、試みてみましたが、C1の値が表示されませんでした。 又上記私の質問文章で、 この時、D1のセルに5(又は8) E1のセルに8(又は5)と数値を入れた時F1にはCの11を表示させたいですと成っていますが、 訂正でCの11ではなくC2の16を表示させたいの間違いです。 お手数掛けますが、宜しくお願い致します。
お礼
皆さん色々な関数考えて頂き有難うございました。 今回はSUMPRODUCT関数を利用する事によって、問題解決しました。 お恥ずかしい話ですが、SUMPRODUCT関数初めて知りました。