Excel formülü: 0 ile 100 arasında sınır yüzdesi -

Genel formül

=MAX(0,MIN(A1,1))

Özet

Yüzde değerini% 0 ile% 100 arasında olacak şekilde sınırlamak için MIN ve MAX işlevlerine dayalı bir formül kullanabilirsiniz. Gösterilen örnekte, C5'teki formül aşağıdaki gibidir:

=MAX(0,MIN(B5,1))

Sonuç, negatif değerlerin sıfıra zorlanması, 1'in üzerindeki değerlerin 1 ile sınırlandırılması ve 0 ile 1 arasındaki değerlerin etkilenmemesidir.

Not: yüzde sayı biçimiyle biçimlendirilmiş tüm değerler.

Açıklama

Bu sorunu anlamak için, yüzde sayı biçimlendirmesinin nasıl çalıştığını anladığınızdan emin olun. Özetle, yüzdeler ondalık değerlerdir: 0,1% 10, 0,2% 20, vb. Yüzde olarak biçimlendirildiğinde 1 sayısı% 100'dür. Sayı biçimleriyle ilgili daha fazla bilgiyi burada bulabilirsiniz.

Bu örneğin amacı, gelen yüzde değerlerini bir üst ve alt eşik içinde kalacak şekilde sınırlamaktır. Negatif değerlere ve% 100'ün üzerindeki değerlere izin verilmez, bu nedenle nihai sonuç sıfır ile 1 (% 0-100) arasında bir sayı olmalıdır.

Bu sorunu çözmek için IF işlevi kullanılabilse de (aşağıya bakın), sonuç biraz daha uzun ve gereksiz olacaktır. Bunun yerine, gösterilen örnek, çok kompakt bir formülde MIN ve MAX işlevlerinin bir kombinasyonunu kullanır:

=MAX(0,MIN(B5,1))

Bu bir iç içe yerleştirme örneğidir - MIN işlevi, MAX işlevinin içine yerleştirilmiştir. Yerleştirme, daha gelişmiş formüller için önemli bir yapı taşıdır.

Baştan sona çalışarak, gelen değerleri şu şekilde 1'e sınırlamak için MIN işlevi kullanılır:

MIN(B5,1) // get smaller value

Tercüme: B5 ve 1'den küçük olanı döndür. 1'in üzerindeki herhangi bir değer için, B5'teki değer döndürülür. Örnekte, B5% -5 (-0.05) içerir, bu nedenle MIN, -0.05 değerini döndürür. Bu sonuç doğrudan MAX işlevine döndürülür:

=MAX(0,-0.05) // get larger value

Burada formülün işe yaradığını görüyoruz. Sıfır, -0,05'ten daha büyük (daha büyük) olduğundan, MAX, nihai sonuç olarak sıfır döndürür. Orijinal değer atılır.

EĞER işlevi

Yukarıda bahsedildiği gibi, IF işlevi de bu sorunu çözmek için kullanılabilir. Bunu yapmak için iki ayrı EĞER işlevine ihtiyacımız var. Bir IF, negatif değerleri sıfıra zorlar:

IF(B5<0,0,B5) // cap at zero

İkinci IF, 1'de daha büyük değerleri kapsıyor:

=IF(B5>1,1,B5) // cap at 1

İlk IF'yi ikincinin içine yerleştirdiğimizde, son formüle sahip oluruz:

=IF(B5>1,1,IF(B5<0,0,B5))

Bu, iç içe geçmiş bir EĞER örneğidir. Yukarıdaki MIN ve MAX formülüyle tam olarak aynı sonucu verir, ancak biraz daha karmaşık ve gereksizdir. Örneğin, B5'e atıfta bulunmanın üç ayrı kez gerçekleştiğine dikkat edin.

Sonuç olarak - daha küçük veya daha büyük değerlere göre bir seçim yapmanız gerektiğinde, MIN ve MAX işlevleri, bir formülü basit tutmanın akıllıca ve zarif bir yolu olabilir.

MEDIAN İşlevi

Tamam, şimdi yuvalama hakkında konuştuğumuza ve MAX ile MIN'in zarafetinden bahsettiğimize göre, bu sorunu MEDIAN işlevi ile hiç iç içe geçmeden çözmenin mümkün olduğunu belirtmeliyim. Formülün genel versiyonu şuna benzer:

=MEDIAN(0,1,A1)

Bu çalışır çünkü ORTANCA işlevi bir grup sayıdaki medyanı (orta sayı) döndürür. Bir değer negatif olduğunda, sıfır ortadaki sayı olur. Bir sayı 1'den büyük olduğunda, 1 ortadaki sayı olur. Zekice!

Ancak, MEDIAN'ın yalnızca toplam değer sayısı tek olduğunda ortadaki sayıyı döndürdüğünü unutmayın. Değerlerin sayısı çift ise, ORTANCA ortadaki iki sayının ortalamasını verir. Sonuç olarak, hedef hücre (A1) boşsa, ORTANCA, yüzde olarak biçimlendirildiğinde 0,5 veya% 50 olan 1 ve sıfır ortalamasını döndürecektir.

Ilginç makaleler...