Прецизност 17 или 15 цифара - Екцел савети

Постоји ружна грешка у прорачуну која се појављује у програму Екцел. Чини се да проблем залази дубоко у Екцел калкулатор и да га неће бити лако решити.

У основи проблема је једноставна чињеница: Екцел у једну ћелију чува 15 цифара прецизности. Можете имати бројеве који имају 20 цифара, али било која цифра између последње значајне цифре и децималног места мора бити нула.

Само 15 цифара прецизности Чини се да ова грешка крши Екцел-ову главну директиву: Рецалц ор Дие.

Недавно сам видео два случаја када је Екцел-ов механизам за израчунавање враћао погрешне резултате. Када сам се позабавио проблемом и погледао основни КСМЛ, изненадио сам се кад сам видео да Екцел тајно чува 17 цифара у КСМЛ-у.

Проблем је што ће Екцел приказати само 15 цифара. Дакле, мислите да имате број који је ускладиштен као 0,123456789012345, али је заиста сачуван као 0,12345678901234567.

Не можете видети те две последње цифре. А већина Екцел-ових функција игнорише те две последње цифре. Да * све * функције игноришу последње две цифре, не бисмо имали проблема. Али до сада сортирање, РАНК и ФРЕКУЕНЦИ користе свих 17 цифара.

Испод је познати трик за рангирање ћелија. Ако вам је потребно да се сваки ранг појави тачно једном, можете комбиновати РАНК и ЦОУНТИФ. На слици испод, Цлаире, Фло, Ивана и Луци су изједначене на 115%. Користећи формулу РАНК + ЦОУНТИФ, требало би да буду рангирани на 5, 6, 7 и 8.

Четири особе су везане са 115%

Али формула не успева. Два реда су рангирана као 7. То се никада не дешава. Четири формуле у колони Д осигуравају да је 115% у Б6, Б9, Б12 и Б15 исто. =B6=B15Формула извештава да оба ћелије садрже исте податке.

Поуздана формула не функционише

Док сам покушавао да изолујем проблем, погледајте само функцију РАНК. Требало би да пријави четворосмерно изједначење на четвртом месту за људе са 115%. Али некако је Луци у 15. реду рангирана испред остале три.

Функција ранга не ради

Да бих то схватио, послао сам захтев за помоћ другим Екцел МВП-има. Јан Карел Пиетерсе отворио је Екцел датотеку и погледао КСМЛ. У КСМЛ-у можете да видите да они чувају 17 цифара прецизности. Четири ћелије које у Екцел-у изгледају као кравата нису повезане у КСМЛ. Један од 115% се чува као 1.1500000000000001, а други су 1.1499999999999999.

КСМЛ открива 2 додатне цифре које се чувају.

До сада сортирање, рангирање и функција ФРЕКУЕНЦИ користе додатне цифре. Зашто је то проблем? Зато што рачунамо да ће РАНК и ЦОУНТИФ користити исти број цифара. Имате проблем са једном функцијом која користи 15 цифара, а друга са 17 цифара.

За сада се чини да решење претвара све ваше одговоре помоћу =ROUND(A4,15).

Чини се да решење користи РОУНД

Сваког петка испитујем грешку или неко друго рибље понашање у програму Екцел. Ову грешку у прорачуну је тешко открити и квалификује се као велика риба.

Екцел мисао дана

Питао сам своје пријатеље из програма Екцел Мастер за савет о програму Екцел. Данашња мисао за размишљање:

„Сваки пут када спојите ћелије убијете маче“

Сзилвиа Јухасз

Занимљиви Чланци...