• ベストアンサー

エクセルの計算式(重量表の作成)

お世話になります。 画像の重量表を作成したいのですが、数式をご教授願います。 A列の重量を重さ別にD~I列に返したいです。 よろしくお願いします。

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

  • ベストアンサー
  • go6n
  • ベストアンサー率21% (3/14)
回答No.2

宜しければ、こちらをお試しください。 (1)(D4セル)に関数を入力 =IF(AND($C4=$D$1,$B4<D$3),$A4,"") (2)(E4セル)に関数を入力 =IF(AND($C4=$D$1,D$3<=$B4,$B4<E$3),$A4,"") (3)(G4セル)に関数を入力 =IF(AND($C4=$G$1,$A4<G$3),$A4,"") (4)(H4セル)に関数を入力 =IF(AND($C4=$G$1,G$3<=$A4,$A4<H$3),$A4,"") (5)(D10セル)に関数を入力 =SUM(D4:D9) ※行が増えた時は、範囲を設定しなおしてください D4をコピーしてE4に貼り付け。 同様に、H4をコピーしてI4に貼り付け。 D4~I4のセルを選択し、コピーして下の行に貼り付け。 D10セルをコピーして、E10~I10に貼り付け。 ※これらはオートフィルでも構いません。 長くなりますので関数の説明は割愛させていただきましたが、 必要であれば返信をお願いたします。 お役にたてれば幸いです。

その他の回答 (2)

  • go6n
  • ベストアンサー率21% (3/14)
回答No.3

回答番号:No.2のgo6nです。 添付画像に一部誤りがございました。 G3、H3、I3の単位を修正しましたので添付しなおします。 なお、関数・手順自体には変更ございません。 失礼いたしました。

GUWANA
質問者

お礼

ありがとうございました。解決です。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! 参考になるかどうか判りませんが・・・ ↓の画像のように表を作ってみました。 Aタイプの場合は○以上△未満で列方向に昇順で並んでいるので 単純にMATCH関数で列方向は検索できますが Bタイプが問題です。 というのは、○より大きくて△以下という区分けになっているため、 本来であれば列方向に降順で並び替えをしないと正確に列の参照をしてくれません。 そこで苦肉の策ですが、 画像の1・2行目を作業列として Bタイプの H1セルの値は「1.50000001」・I1セルの値は「5.0000001」という数値にして整数のみを表示させるようにしています。 結局2行目は必要なくて、1行目で検索しますので 無理矢理そのような数値にしています。 そして、Aタイプ・Bタイプ別々に数式を入れる必要がありますので、 まず、D6セルに =IF(COUNTBLANK($A6:$C6)>0,"",IF(AND($C6=$D$3,COLUMN(A1)=MATCH($B6,$D$1:$F$1,1)),$A6,"")) という数式を入れて、F6までオートフィルでコピーします。 そして、D6~F6セルを範囲指定し、 オートフィルで下へコピーします。 次に、Bタイプの方ですが G6セルに =IF(COUNTBLANK($A6:$C6)>0,"",IF(AND($C6=$G$3,COLUMN(A1)=MATCH($B6,$G$1:$I$1,1)),$A6,"")) という数式を入れ、同様にI6セルまでオートフィルでコピー そして、G6~I6セルを範囲指定しオートフィルで下へコピーすると 画像のような感じになります。 これで何とか希望に近い形にならないでしょうか? 以上、参考になれば幸いですが、 他に良い方法があれば読み流してくださいね。m(__)m

GUWANA
質問者

お礼

ありがとうございました。解決です。

関連するQ&A