• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCEL 2つの条件で値を代入する)

EXCELで2つの条件で値を代入する方法

このQ&Aのポイント
  • EXCELで困っている方へ。シート1に入力番号の列を作成し、シート2の入力番号を自動で代入する方法をご紹介します。
  • シート1には形、品名、単位があります。形が310の場合、単位によって入力番号が異なります。400や500などの場合は2つ目の条件がありません。どのような式を作成すればよいのでしょうか?
  • お困りの方へ。EXCELでシート1に入力番号の列を作り、形と単位からシート2の入力番号を自動で代入する方法をご説明します。形が310の場合、単位によって入力番号が異なりますが、400や500の場合は2つ目の条件はありません。

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

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

シート1 KEY 形    品名    単位 入力番号 310-Kg  310   あああ   kg  1 310-個  310   あああ   個   2 400-   400   いいい       3 500-   500   ううう       4 KEY=CONCATENATE(B2,"-",D2) または KEY=B2&"-"&D2 シート2 形  単位  入力番号 310  kg   =VLOOKUP(CONCATENATE(A2,"-",B2),シート1!$A$2:$E$100,5,FALSE)

g7gg10
質問者

お礼

早速のご返事ありがとうございます。 シート1とシート2でやりたかったことが反対ですが、やり方は同じなので大丈夫でした。 質問の書き方が分かりにくくてスミマセン。 ありがとうございました。

その他の回答 (2)

  • FEX2053
  • ベストアンサー率37% (7995/21381)
回答No.3

何も考えずに「型 & 単位」と文字列をひっつけた形で検索すればオッケー、比較対象のシート2だけは、VLOOKUP関数の特性から「型 & 単位」が先頭列に無いといけないので、=A1 & B1 とかで検索列を作っておく必要があるけど・・・。 単位が無い=長さゼロの文字列、ということになるので、これでうまく行く筈です。

g7gg10
質問者

お礼

ご返事ありがとうございます。 関数がいまいち苦手で、少しでも違うところがあると戸惑ってしまいます。 分かりやすい解説ありがとうございました。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

簡単な式: =IF(COUNTIF(Sheet2!A:A,A2)>1,SUMPRODUCT((Sheet2!$A$1:$A$100=A2)*(Sheet2!$B$1:$B$100=C2),Sheet2!$C$1:$C$100),VLOOKUP(A2,Sheet2!A:C,3,FALSE)) 難しい式: =SUMPRODUCT((Sheet2!$A$1:$A$10=A2)*((Sheet2!$B$1:$B$10="")+(Sheet2!$B$1:$B$10=C2)>0),Sheet2!$C$1:$C$10)

g7gg10
質問者

お礼

ご返事ありがとうございます。 この式を使って勉強したいと思います。 簡単な式と難しい式2通り書いていただきありがとうございます。 関数は奥が深いですね。 とても勉強になります。

関連するQ&A