Я не могу расшифровать, что происходит в моем листе Excel. Похоже, что результатом функции суммирования является число, но это значение не ведет себя как число в последующей формуле суммирования.
Чтобы быть более конкретным:
Я использую формулу на основе =sumproduct, чтобы ранжировать значения, введенные в столбце =СУММПРОИЗВ((P19‹=P$19:P$73)/СЧЁТЕСЛИ(P$19:P$73,P$19:P$73)), я использую это потому что =rank.eq не возвращает последовательные числа (что важно в других местах).
Позже я использую sumif, чтобы собрать все эти значения с одинаковым рангом в сумму. Сумматор возвращает правильный результат для 25 столбцов, но для 26-го столбца он возвращает 0. Бывает, что все остальные столбцы имеют 5 рангов (1-5) и, следовательно, количество элементов, которое делится на 5.
Для 26-го столбца сумма возвращает = 0 =СУММЕСЛИ($AD$19:$AD$73,=&AO$20,$X$19:$X$73)/СУММЕСЛИ($AD$19:$AD$73,=&AO$20,$Y$19) :$Y$73)
При проверке результата =СУММПРОИЗВ((P19‹=P$19:P$73)/СЧЁТЕСЛИ(P$19:P$73,P$19:P$73)) с типом результат равен 1 (число). Когда ячейка отображает 6, =int(6) возвращает значение 5 (не 6). Я попытался решить проблему с помощью =abs(СУММПРОИЗВ((P19‹=P$19:P$73)/COUNTIF(P$19:P$73,P$19:P$73))) это не решило проблему.
При проверке результата: =СУММПРОИЗВ((P19‹=P$19:P$73)/СЧЁТЕСЛИ(P$19:P$73,P$19:P$73)) → 6 (даже 6,000000000000 в формате числа)
=abs(СУММПРОИЗВ((P19‹=P$19:P$73)/СЧЁТЕСЛИ(P$19:P$73,P$19:P$73))) возвращает число 6 (даже 6.000000000000 в формате числа)
но =int(СУММПРОИЗВ((P19‹=P$19:P$73)/СЧЁТЕСЛИ(P$19:P$73,P$19:P$73))) возвращает число 5
=округление(СУММПРОИЗВ((P19‹=P$19:P$73)/СЧЁТЕСЛИ(P$19:P$73;P$19:P$73))),1) возвращает число 6
Поскольку типом является «число», а =abs() не имеет эффекта, кажется очевидным, что отображаемое значение близко к 6 для excel. Тем не менее, для =if() и =sumif() и =int() очевидно, что это не 6.
Может ли кто-нибудь просветить меня, что здесь происходит? Использование =roundup(...,1) заставило лист работать, но это не очень элегантно.
=(SUMPRODUCT((P19<=P$19:P$73)/COUNTIF(P$19:P$73,P$19:P$73))<6)
. - person Xaver   schedule 21.12.2020