
変数を含む数式に基づいてセルの値を「比較」する方法を知りたいです。具体的には、式100 * 25^n
と、それと比較されるセルがありますE2
。セルが より大きいが100 * 25^0
より小さい場合100 * 25^1
、この数式で と表示します2^1
。セルが より大きいが100 * 25^1
より小さい場合100 * 25^2
、数式で と表示します2^2
。数式で n の最大値に達するまで「比較」を続け、セルが到達したら 2^n と表示します。もちろん、次のように複数の IF 関数としてこれを記述することもできます。
=IF(E2 >= 100 * 25^0, IF(E2 >= 100 * 25^1, 4, 2), 1)
しかし、これは非常に面倒で、コピー&ペーストに時間がかかり、無限に続くこともないので、私の問題にはあまり適した選択ではありません。
どのような助けでも大歓迎です。
答え1
私が正しく理解しているなら、求めているのは、E2 の数値の 2 を 25 を底とする LOG で乗じて 100 で割り、最も近い整数に切り捨てた値です。それが正しい場合は、次の式を試してください。
=POWER(2,ROUNDDOWN(LOG((E2/100),25),0)+1)
しかし、100未満の値の場合はE2
、結果は2になるので、IF
=IF(E2<100, 1, POWER(2,ROUNDDOWN(LOG((E2/100),25),0)+1))