IF関数を使った少し複雑な計算式です。基礎編から少しステップアップした応用編になります。
型番、テープの有無の他に、個包装、個数、最低lotを加え、最後に合計を計算する表を作ります。
下準備をする
「型番」「テープの有無」「個包装」はセルにドロップダウンリストを設定します。*ドロップダウンリストの作成方法は下記コラムをご確認ください。

価格表を作ります。
個包装した場合の追加料金や最低lotの数量、その場合の金額を記入します。
今回は同じタブに作っていますが、異なるタブに作成してタブを非表示にしたり、特定のセル以外入力できないようにすれば、他の人が勝手に価格表を変更することができず安心です。

VLOOKUPを使って最低lotの表示
型番を入れると最低lotが表示されるようにします。
今回はVLOOKUPを使用します。
=VLOOKUP("探す数値・文字列","探す範囲","表示する列",FALSE) *FALSEは完全一致
この場合、セルが空白だったり表に無い型番を入れるとエラー表示になるので、IFERROE関数をつかい「#VALUE!」などの表示が出ないようにします。
=IFERROR(値, エラーの場合の値)
値に「(VLOOKUPの式)」を入れ、エラーの場合の値に「””」と入れると、VLOOKUPがエラーの場合何も表示されません。

最低lot以上の場合の計算式
最低lot以上の数量の場合の計算式をつくります。
最低lot以上の場合の計算式は基礎編でご紹介した通りです。
IF関数で型番に入っている値とテープの有無を価格表の値を比べて等しい場合はそれに当てはまるセルの値を返す式になります。

個包装の有無による値段の表示
次に個包装の有無によって値段を変えます。
個包装のセル(D2)が「あり」なら個包装ありの場合に足される単価(L7)が表示されるようにします。そうでない場合は「0」が表示されるようにします。
=IF(条件,正しい場合の値,間違った場合の値)

最低lot以上の場合の合計
最低lot以上の小計と梱包費用を足します。さらに数量をかけて合計を表示します。そうすると最低lot以上の数量の場合の値が計算されます。

最低lot以下の場合の表示
次に最低lot以下の数量の場合です。
もし個数が最低lot以下の場合は「一式」と表示されるようにします。
=IF(個数のセル>最低lotのセル,"","一式")
*上記式は最低lotの値より個数が大きい場合、何も表示せず、それ以下の場合は「一式」と表示するという式になります。
さらにIF関数で価格表にある型番のいずれかが記入されたときだけ表示するという条件を足しています。

最低lot以下の場合の小計を出します。
IF関数で型番がOOでG2が「一式」の場合、XXのセルの値を返すとします。型番やG2に何も記入されていない場合は何も表示しないという条件を加えます。

計算表の合計表示
最後に計算表の合計を表示させます。合計のセルにG2に表示がなければ最低lot以上の合計を表示し、「一式」とあれば最低lot以下の小計を表示する式を入れます。
加えてIFERROR関数を使い、エラーの場合は何も表示しないようにします。

実際に型番や数量を入れてみました。
型番P-1、テープあり、個包装あり、数量16の場合は、
P-1の最低lotは10ですので、最低lot以上の場合の計算式が返ってきました。

数量5に変更すると、最低lot以下の一式の金額が返ってきました。

最後に
いかがでしたでしょうか。
今回は、少し複雑な式になっていますが、基本はIF関数「もし~なら」で構成されています。このIF関数を使いこなせるとカスタムパーツや付属品の種類が多い商品でも簡単に計算できる原価計算表が作れます。ぜひ挑戦してみてください。













