Страницы: 1
RSS
Почему число, полученное ПРАВСИМВ, сравнивается с другим неправильно?
 
Подскажите, при совместном  использовании функций  ЕСЛИ и ПРАВСИМВ в формуле ячейки С2 выдает неправильный результат

в ячейке B2 формула =ЕСЛИ((21-ПРАВСИМВ(A2;2))>=0;21;121)-ПРАВСИМВ(A2;2), ответ правильный
в ячейке C2 формула =ЕСЛИ((ПРАВСИМВ(A2;2))<=21;21;121)-ПРАВСИМВ(A2;2), ответ неправильный
В чем причина неправильного результата?
В ячейках В1 формула =ЕСЛИ((21-A1)>=0;21;121)-A1 ответ правильный
в ячейке С1 формула  =ЕСЛИ(A1<=21;21;121)-A1 ответ правильный
отличие формул в ячейках В1, С1 и В2, С2 внесение вместо значения А1 функции ПРАВСИМВ
Изменено: vikttur - 06.10.2021 15:53:44
 
а что по вашему должно было получиться в С2? и почему?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
А так?
Код
=ЕСЛИ((--ПРАВСИМВ(A2;2))<=21;21;121)-ПРАВСИМВ(A2;2)
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
ПРАВСИМВ() в результате выдает СТРОКУ. А сравниваете с ЧИСЛОМ.
Насколько я помню, строка всегда больше числа.
Кому решение нужно - тот пример и рисует.
 
Цитата
Максим В. написал:
1=ЕСЛИ((--ПРАВСИМВ(A2;2))<=21;21;121)-ПРАВСИМВ(A2;2)
благодарю, теперь правильный результат.
Что означают символы -- в формуле?
 
Цитата
Сергей К написал:
Что означают символы -- в формуле?
превращает текст в число
5 - это число
"5" - это текст, т.к. взят в кавычки
"5"+1 - будет ошибка, вы складываете текст плюс 1. Нельзя сложить текст "мама" и плюс любое число
=--"5"+1 - ответ будет 6. Текст в кавычках будет форсировано (насильно) переведено в число и сложено с 1.
Изменено: New - 06.10.2021 15:53:23
 
Цитата
Сергей К написал:
символы --
двойной минус.
заставляет эксель "принудительно" делать математику.
можно умножать *1
а по мнению мелкософта - правильно использовать ф-ю ЗНАЧЕН()
но "--" удобней ЗНАЧЕН() ;)
Изменено: andylu - 06.10.2021 15:52:17
 
просто иногда можно и нужно
=ЕСЛИ((ПРАВСИМВ(A2;2))-21<=0;21;121)-ПРАВСИМВ(A2;2)
По вопросам из тем форума, личку не читаю.
 
т.е функция значение по отношению к ПРАВСИМВ необходима только при сравнении с другим числом, функции вычитание, сложение, умножение уже используют значение функции ПРАВСИМВ?
Изменено: vikttur - 06.10.2021 17:33:41
 
Математические операции преобразуют числовое значение в число.
 
Цитата
Сергей К:  Что означают символы -- в формуле?
Цитата
New:  "5"+1 - будет ошибка, вы складываете текст плюс 1...
        =--"5"+1 - ответ будет 6.
и ="5"+1 будет 6, ибо:
Цитата
vikttur:  Математические операции преобразуют числовое значение в число.
 
Почитайте разъяснения Владимира (ZVI) здесь.
Владимир
Страницы: 1
Наверх