Есть 2 таблицы, содержимое ряда ячеек первой таблицы высчитываются из аналогичной (по номеру ряда) второго столбца второй таблицы. Т.е. по определению, сумма ячеек в строке первой таблицы одинаковы. Простите, если запутано, но не в этом суть. Для проверки я запустил простую проверку обратным действием -в цикле сумировал ячейки ряда первой таблицы и сравнил их с ячекйкой, которая служила основанием для расчета (if сумма всех ячеек <> ячейке "Материнской" таблице Then окрасить строку в красный цвет). Каково же было мое удивление, когда несколько строк сработали по этому условию... Пересчитал вручную - совпадают сумма ячеек и "контрольное" значение. Запустил пошагово - то же. На скриншоте (http://prntscr.com/m8669n) видно SS (сумма) ячеек подсчитанная в цикле равна материнской ячейке (минус соседняя ячейка, но она пустая). Т.е. два абсолютно одинаковых числа в условии сравнения программой отрабатываются как разные... Почему так??
Есть 2 таблицы, содержимое ряда ячеек первой таблицы высчитываются из аналогичной (по номеру ряда) второго столбца второй таблицы. Т.е. по определению, сумма ячеек в строке первой таблицы одинаковы. Простите, если запутано, но не в этом суть. Для проверки я запустил простую проверку обратным действием -в цикле сумировал ячейки ряда первой таблицы и сравнил их с ячекйкой, которая служила основанием для расчета (if сумма всех ячеек <> ячейке "Материнской" таблице Then окрасить строку в красный цвет). Каково же было мое удивление, когда несколько строк сработали по этому условию... Пересчитал вручную - совпадают сумма ячеек и "контрольное" значение. Запустил пошагово - то же. На скриншоте (http://prntscr.com/m8669n) видно SS (сумма) ячеек подсчитанная в цикле равна материнской ячейке (минус соседняя ячейка, но она пустая). Т.е. два абсолютно одинаковых числа в условии сравнения программой отрабатываются как разные... Почему так??Raid
Сообщение отредактировал Raid - Четверг, 17.01.2019, 01:51
Попробовал сравнивать через переменные - та же проблема... Пожалуйста, объясните, в чем проблема??? Почему одни строки нормально отрабатываются, а некоторые отрабатываются как не одинаковые???
Попробовал сравнивать через переменные - та же проблема... Пожалуйста, объясните, в чем проблема??? Почему одни строки нормально отрабатываются, а некоторые отрабатываются как не одинаковые???Raid
Многие нарываются Ошибка стандарта вычислений с плавающей точкой (запятой), применяемого в вычислительной технике. Ошибка возникает в 15-м знаке после запятой при делении или разности из-за двоичных преобразований. Решение: округлять полученное значение до нужной точности [vba]
Многие нарываются Ошибка стандарта вычислений с плавающей точкой (запятой), применяемого в вычислительной технике. Ошибка возникает в 15-м знаке после запятой при делении или разности из-за двоичных преобразований. Решение: округлять полученное значение до нужной точности [vba]
Да откуда знать, какой допуск для Вас нормальный? Если 1% много, при округлении оставляйте больше знаков после запятой. Можно и 9, и 12. А конечный результат округлить до копеек.
Да откуда знать, какой допуск для Вас нормальный? Если 1% много, при округлении оставляйте больше знаков после запятой. Можно и 9, и 12. А конечный результат округлить до копеек.vikttur
Да откуда знать, какой допуск для Вас нормальный? Если 1% много, при округлении оставляйте больше знаков после запятой. Можно и 9, и 12. А конечный результат округлить до копеек.
Сорри, ночь, голова не соображала. Подумал, что это разница в подсчетах связана с ошибкой стандарта чисел с плавающей запятой. Потом нашел ошибку
Цитата
Да откуда знать, какой допуск для Вас нормальный? Если 1% много, при округлении оставляйте больше знаков после запятой. Можно и 9, и 12. А конечный результат округлить до копеек.
Сорри, ночь, голова не соображала. Подумал, что это разница в подсчетах связана с ошибкой стандарта чисел с плавающей запятой. Потом нашел ошибку Raid