仕事用のボーナススプレッドシートを作成しようとしているのですが、次のような問題が発生しています。
この式を使って80%、90%、100%を決定します
=IF(D6>J8,0,IF(AND(D6<=J8,D6>J7),80,IF(AND(D6<=J7,D6>J6),90,IF(D6<=J6,100,0))))
この例では、D6:D8
値は 3、4、5 (それぞれ 80、90、100%) であり、J7
動的な値は 4.5 です。
現在、この数式では、値 4.5 は 80% の値が返されますが、85% の値が返されるようにする方法を見つけたいと思います。% が「数学的に」正しくないため、返される最低の % が 80、最高が 100 になるため、問題が発生しています。
どこかの誰かにとって、これが意味を成すものであることを願っています。不明な点やさらに情報が必要な場合は、お知らせください。できる限り説明いたします。
編集: ここにファイルのコピーがあります。「結果」列に入力した内容に応じて、「範囲の %」列は「範囲目標」に基づいて調整されます。繰り返しますが、これで意味が伝われば幸いですが、説明するのは少々大変です...
https://drive.google.com/file/d/0B8Z-j7zw6RADb1dLNkppWWx1Q1E/edit?usp=sharing
答え1
私の理解が正しければ、区間 [J8,J7[ ([4,5[) の値を区間 ]90,80] に変換する関数が必要なのでしょうか?
そうであれば、これで質問は解決するはずです:
=IF(D6>J8,0,IF(AND(D6<=J8,D6>J7),80+10*((J8-D6)/(J8-J7)),IF(AND(D6<=J7,D6>J6),90,IF(D6<=J6,100,0))))