- 締切済み
エクセルで二つの条件から結果をだす方法
下記にあるような表においてコードA欄と判定欄のデータから結果を出す方法もしくは関数があれば教えてください 一応、関数ハンドブックも見たのですが、それらしいものが見つかりませんでした。 また関数でなくても効率よくエクセルで結果を出していく方法があれば教えてください。 よろしくお願いします。 参考例) コードA欄 判定欄 結果欄 AA1 1 50 AA1 0 100 AB2 1 50 CD3 0 100 ・コードAはアルファベットと数字の混合で30種類ほど存在 ・判定欄は0か1の整数 ・同じコードでも判定の異なるデータを結果欄で振り分ける
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
VLOOKUP関数で出来るでしょう。 少し技巧を凝らして。 検索表を コードA欄+/+判定欄のように結合して、1列に持ちます。 /は他の記号でも良いが、それを入れる意味は判りますか。例えばAA11とAA1+1 が同じにならないようにするものです。本件では関係ないかも知れない。 第2列は結果の列を置きます。 E列 F列 AA1/1 50 AA1/0 100 AB2/1 50 CD3/0 100 関数は =VLOOKUP(A1&B1,$E$1:$F$10,2,FALSE) のように2列のデータを結合して、第1引き数とします。 本件はA、B列は文字列のようですが、必要あれば、数値の場合は不都合があるかどうか検証して見てください。
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
vlookup関数の第3パラメータの使い方の基本ですよ。 表を code 判定1 判定0 AA1 50 100 AB2 50 100 のようにします。vlookup関数でcodeを検索し、判定欄が1なら2列目 の結果、0なら3列目の結果が出ればいいので、 =vlookup(code, 表, 3-判定, FALSE) でオッケー。 いや、判定0を2列目、判定1を3列目にすればもっと簡単なんですけど ね。一応質問で判定1が先に来てるから…
- shishishishi
- ベストアンサー率39% (362/921)
コードAが30種類程度なら、そのコード末尾に判定の0または1をくっつけ、その右側に結果の数値をいれたた別表を作ります。 例、 AA11 50 AA10 100 結果欄は=VLOOKUP(コードAのセル&判定欄のセル,別表の範囲,2,FALSE)でOK
お礼
なるほど。そういう手もありますね。 大変参考になります。ありがとうございます。