• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル2003で価格表を作りたい)

エクセル2003で価格表を作成!タテ方向に印刷枚数、横方向にデザイン番号を設定

このQ&Aのポイント
  • エクセル2003を使用して、タテ方向に印刷枚数、横方向にデザイン番号の価格表を作成したいです。
  • 別シートに枚数とデザイン番号を入力すると、該当の価格が表示されるようにしたいです。
  • 枚数やデザイン番号に応じて価格が変動し、制約条件内では同じ価格になるようにしたいです。

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

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

こんばんは! 一例です。 質問の表は(列方向の場合) 0以上~10以下 11以上~20以下 21以上~30以下 ・・・ (列方向も同様の考え) となっている訳ですよね? 元データが昇順の場合は○○以上~△△未満という一つのかたまりで考えます。 その場合は↓の画像のように表に一工夫が必要になります。 上側の薄い緑色部分データが必要です。 このような加工をすると↓の画像のSheet2のC2セルに =IF(COUNTBLANK(A2:B2),"",INDEX(Sheet1!$C$3:$F$6,MATCH(B2,Sheet1!$A$3:$A$6,1),MATCH(A2,Sheet1!$C$1:$F$1,1))) という数式を入れオートフィルで下へコピーすると ご希望の表示になると思います。 別案として黄色い表の部分のように降順に表を作成しておくと ○○を超えて~△△以下の範囲で拾い出しが可能です。 黄色い表の配置だと Sheet2のC2セルに =IF(COUNTBLANK(A2:B2),"",INDEX(Sheet1!$C$10:$F$13,MATCH(B2,Sheet1!$B$10:$B$13,-1),MATCH(A2,Sheet1!$C$9:$F$9,-1))) という数式を入れオートフィルで下へコピー! 同様の結果になると思います。 ※ 今回は41枚以上・521番以上はない!という前提ですので、 それ以上の数値がある場合は行・列とも一つずつ増やして、 これ以上ない!というデータを入れておきます。 長々と書きましたが 「以上~未満」と「○を超えて~以下」 の違いはご理解いただいたでしょうかね? いずれにしても少し表に手を加える必要があると思います。m(_ _)m

その他の回答 (4)

回答No.5

デザインIDに対する幅の考慮(ランク切上げ)が出来ていなかったので訂正、 考え方は枚数の場合と同じ。 現状の設定値に対して、同じ価格での下限のIDを意味する枚数(MIN)を(E列以降の)2行目に設定する。 例えば、最初のE1が100ならE2:1、F1の250に対してはF2:101、要は(次の設定値)=(直前の列の設定値)+1の関係にする。デザインIDの検索は2行目を使う。 A3:価格(お答え) =VLOOKUP($A$2,$D$2:$AA$99,MATCH(HLOOKUP($A$1,$E$2:$AA$2,1,TRUE),$E$2:$AA$2)+1,TRUE)

回答No.4

お金のことなので必ず確認しますよね? 心配になると二度三度、そのやり方では確実に確認に手間取ります。 なので同じシートでやりましょう。 A1:注文デザインID A2:注文枚数 A3:価格(お答え) =VLOOKUP($A$2,$D$2:$AA$99,MATCH($A$1,$E$1:$AA$1)+1,TRUE) B1:デザインID(固定文字:見出し) B2:枚数(同上) C列:枚数(MAX:現状の設定値) D列:枚数(MIN)、現状の設定値に対して、同じ価格での下限の枚数を意味する。 例えば、C列が10なら1、20に対しては11、要はD列=(C列-9)の関係にする。 C列以降が価格テーブルとなる。実際に枚数の検索で使うのは、C列ではなくD列であることにご注意ください。(D列は非表示にしても構わない)

noname#204879
noname#204879
回答No.2

[No.1]の誤謬訂正、 「Sheet1!C2:」は「Sheet2!C2:」の間違いでした。

noname#204879
noname#204879
回答No.1

添付図参照 Sheet1!C2: =VLOOKUP(-B2,Sheet1!A$2:E$5,MATCH(-A2,Sheet1!A$1:E$1))

関連するQ&A