マリッサはラボで働いており、Excelを使用して、カビの胞子のサンプリング結果を示すクライアントレポートを作成しています。表示される最初のサンプルは常にベースラインです。レポートの後続のすべてのサンプルは、ベースラインの10倍である場合に強調表示する必要があります。マリッサは、ベースラインが0より大きい場合にこれを把握していますが、ベースラインが0の場合、サンプルは10以上の場合にのみ強調表示する必要があります。 (言い換えると、0と1のベースラインは、比較と強調表示の目的でまったく同じように扱われます。)

しばらくの間、ベースライン値がセルA2にあると仮定しましょう。

マリッサが、次のように、サンプル値(セルA3で開始するとします)をベースライン値に10を掛けて比較する条件付き書式ルールの数式を開発した可能性があります。

=A3 >= ($A$2 * 10)

これは、A3の値がセルA2のベースライン値以上の場合にTrueを返します。この数式に対して実行する必要があるのは、使用されているベースライン値が1未満にならないようにすることだけです。数式に対して実行できる調整はいくつでもあります。たとえば、以下はIFステートメントを使用してベースライン値を評価します。 0に等しい場合は、変更された値10を返します。

=A3 >= (IF($A$2 = 0, 10, $A$2 * 10))

必要に応じて、一連の値から最大値を返すMAX関数を使用することもできます。

=A3 >= (MAX($A$2,1) * 10)

MAXは、A2のベースライン値または値1のいずれか大きい方を返すことに注意してください。つまり、ベースライン値が1を下回ることはありません。

最後に、Excelがブール論理を処理する方法に単純に依存している場合は、数式でワークシート関数を完全に回避できます。次の式を検討してください:

=A3 >= ($A$2 - ($A$2 = 0)) * 10

これは、ベースライン値(セルA2)に0が含まれている場合、($ A $ 2 = 0)が値-1(ExcelがTrueに使用する値)を返すという非常に単純な原則に基づいて機能します。ベースライン値が0以外の場合、テスト($ A $ 2 = 0)は0(ExcelがFalseに使用する値)を返します。

次に、この値(-1または0)がベースラインから減算され、10が乗算されます。つまり、A2にゼロが含まれている場合、数式は0-1、つまり1に対してテストされるため、テストは次のようになります。 A1に1が含まれているかのように実行されます。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(13447)は、Microsoft Excel 2007、2010、2013、および2016に適用されます。