- ベストアンサー
EXCEL(関数)で見積書の決裁条件を設定する方法
- EXCELの関数を使って見積書の決裁条件を自動設定する方法を教えてください。
- 具体的には、見積金額と利益率に基づいて課長決裁、部長決裁、社長決裁といった文字列を特定のセルに表記したいです。
- マクロを使わずに関数だけで実現する方法を教えてください。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (5)
- KURUMITO
- ベストアンサー率42% (1835/4283)
シート1のA列で例えばA1セルに見積金額、B列でB1セルに利益率を入力するとしてC1セルには次の式を入力します。 =INDEX(Sheet2!$A$1:$E$6,MATCH(A1,Sheet2!$A$1:$A$6,1),MATCH(B1,Sheet2!$1:$1,1)) シート2ではB1セルに0、C1セルに0.03、D1セルに0.05、E1セルに0.08と入力します。 A2セルには0、A3セルには100、A4セルには300、A5セルには500、A6セルには2000と入力します。 その他は以下のようにします。 0 0.03 0.05 0.08 0 課長決済 課長決済 課長決済 課長決済 100 部長決済 部長決済 課長決済 課長決済 300 社長決済 部長決済 部長決済 課長決済 500 社長決済 社長決済 部長決済 部長決済 2000 社長決済 社長決済 社長決済 社長決済
お礼
回答ありがとうございます! 上記の通り一覧表にしてみたら条件が非常にわかりやすくなりました。 早速やってみます。
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
9個以上の条件があるのならif関数の羅列はありません。関数のネス トは7個までですからね。だいたいそんなもの、書けたとしても見渡 しが悪くて、条件変更がヒドく面倒なモノになります。 基本はlookup関数やmatch関数といった検索関数の組み合わせでしょ う。たとえば縦に金額、横に利益率の表を作り、交差したセルの内 容をかえすようにするんです。その際に、基準を「未満」ではなく 「以上」で考えて下さい。それがExcelの検索関数の発想です。 0% 3% 5% 8% 0 課長 課長 課長 課長 100 部長 課長 課長 課長 300 社長 部長 部長 課長 500 社長 社長 部長 部長 2000 社長 社長 社長 社長 これなら判りやすいですよね。名前の定義を駆使すればたとえば、 =lookup(A1,金額,hlookup(B1,利益率,1))なんてシンプルに書けたり もします。
お礼
回答ありがとうございました。 皆さんの例を扱えるようになったら、このように分かりやすくシンプルにする技も 覚えたいです。 早速やってみます。
- wisemac21
- ベストアンサー率39% (171/429)
- MackyNo1
- ベストアンサー率53% (1521/2850)
利益率5%の分岐点が不明ですが、提示された部分だけを数式にするなら以下のようなIF関数になります(IF関数を作成するときのポイントはだんだん条件を広げていく順に絞り込む形で数式を作成します)。 =IF(A1<1000000,"課長決裁",IF(A1<3000000,IF(B1<0.03,"社長決裁",IF(B1<0.05,"部長決裁","課長決裁")),"300万以上")) 300万以上の部分にさらに条件があるなら「"300万以上"」の部分をさらにIF関数で分岐してください。
お礼
詳細説明ありがとうございました!! 何となく出来そうです、早速試してみます!
補足
ちなみに全ての条件を羅列しますと下記の通りとなります。 IFの条件文が途中から分かりづらく、例文頂けますでしょうか? 100万円未満のときは「課長決済」 300万円未満で利益率が5%以上のときは「課長決済」 300万円未満で利益率が5%未満のときは「部長決済」 500万円未満で利益率が8%以上のときは「課長決済」 500万円未満で利益率が8%未満のときは「部長決済」 500万円未満で利益率が3%未満のときは「社長決済」 2,000万円未満で利益率が5%以上のときは「部長決済」 2,000万円未満で利益率が5%未満のときは「社長決済」 2,000万円以上のときは「社長決済」
条件なので、IF文のネストで。 同じ条件が続くなら(今回の100万以上、300万未満など)、まとめられると思うけど。
お礼
早速の回答ありがとうございます! IFかな~とはおもいつつ、どのような条文(?)になるか分からなかったので …。
お礼
非常に分かりやすかったです。解説図付きで丁寧な回答ありがとうございました