- ベストアンサー
エクセル関数 送料代を出す方法
- エクセルの関数を使用して、商品名・個数・金額・梱包数を入力し、都道府県を指定すると送料代が計算される方法を教えてください。
- エクセルのシート1には商品名、サイズ、都道府県などが記載されており、シート2には商品名、個数、金額、梱包数、送料代などが記載されています。
- シート2の送料代の金額を計算するための関数の式が分からないので、教えていただきたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
御質問文の例の様に、Sheet2において「AA」~「名古屋」を表示させる行を1行目としたのでは、「商品名」~「都道府県」を入力する行が無くなってしまいますから、「商品名」~「都道府県」を入力している行が1行目であり、「AA」~「名古屋」を表示させる行は2行目であるものとします。 同様にSheet1においても、「商品名」、「サイズ」、「都道府県」、「60サイズ」、「80サイズ」、「100サイズ」等が入力されている行は1行目であるものとします。 >商品名・個数・金額・梱包数を入力後、都道府県を入れたら送料代が入るようにしたいのですが >関数の式を教えて下さい。 御質問文のSheet2の3行目の例において、個数と梱包数が異なっていますが、その例においては、個数を無視して、梱包数を基に送料代を決めている様ですので、以下の方法でも、個数を無視して、梱包数を基に送料代を決める様にしております。 まず、Sheet2のE2セルに次の関数を入力して下さい。 =IF(OR($A2="",$F2="",NOT(ISNUMBER($D2))),"",IF(ISERROR(1/(INDEX(Sheet1!$F$2:$H$4,MATCH($F2,Sheet1!$E$2:$E$4,0),MATCH(VLOOKUP($A2,Sheet1!$A$2:$B$4,2,FALSE)&"サイズ",Sheet1!$F$1:$H$1,0))<>"")),"【データ無し】",INDEX(Sheet1!$F$2:$H$4,MATCH($F2,Sheet1!$E$2:$E$4,0),MATCH(VLOOKUP($A2,Sheet1!$A$2:$B$4,2,FALSE)&"サイズ",Sheet1!$F$1:$H$1,0))*$D2)) そして、Sheet2のE2セルをコピーして、Sheet2のE3以下に貼り付けて下さい。 以上です。
お礼
求めていたものです、ありがとうございます! すごい満足です!!