|
0 / 0 / 0
Регистрация: 16.02.2023
Сообщений: 13
|
||||||
Отображение округленного числа в ячейке и .Value16.02.2023, 09:27. Показов 1575. Ответов 32
Метки нет (Все метки)
Добрый день, уважаемые форумчане! Возможно, вопрос рассматривался, я честно искал но не нашел.
Такая проблема - беру .value ячейки, привожу к Single, плюсую к нему, округляю раундом до 4 знака и снова записываю в .value ячейки.
Можно ли с этим что то сделать, чтобы .value ячейки был точно четырехзначным или это невозможно с данными типа Single?
0
|
||||||
| 16.02.2023, 09:27 | |
|
Ответы с готовыми решениями:
32
Отображение числа и % в скабках в одной ячейке
|
|
Динохромный
1639 / 776 / 288
Регистрация: 22.12.2015
Сообщений: 2,431
|
|||
| 16.02.2023, 12:09 | |||
|
0
|
|||
| 16.02.2023, 12:12 | |
|
0
|
|
|
Динохромный
1639 / 776 / 288
Регистрация: 22.12.2015
Сообщений: 2,431
|
||
| 16.02.2023, 12:41 | ||
|
Не по теме:
— Что-ж ты, Родя? Старушку за 20 копеек топором... — Не скажите, Федор Михалыч! Пять старушек - уже рупь!
0
|
||
|
0 / 0 / 0
Регистрация: 16.02.2023
Сообщений: 13
|
|
| 16.02.2023, 13:37 [ТС] | |
|
Подведем итоги (скорее для начинающих, чтобы не попасть в такую же ситуацию):
1. Всем спасибо за ответы. 2. Точности типа Single недостаточно для "аккуратного" округления до 4 знака. 3. Неясно, какой тип данных возвращает Round. Здесь не написано: https://learn.microsoft.com/ru... d-function 4. Метод WorksheetFunction.Round возвращает Double, которого достаточно для "аккуратного" округления до 4 знака.
0
|
|
|
0 / 0 / 0
Регистрация: 16.02.2023
Сообщений: 13
|
|
| 16.02.2023, 14:05 [ТС] | |
|
АЕ, эмм... вроде бы я такого не писал, и ввиду не имел. Еще раз - я благодарен всем, кто ответил, выводы сделаны на основе этих самых ответов, и возможно, помогут кому-то еще.
0
|
|
|
Динохромный
1639 / 776 / 288
Регистрация: 22.12.2015
Сообщений: 2,431
|
|
| 16.02.2023, 14:12 | |
|
1
|
|
|
0 / 0 / 0
Регистрация: 16.02.2023
Сообщений: 13
|
|
| 16.02.2023, 16:14 [ТС] | |
|
Dinoxromniy,
Так не пойдет, надо: Dim a As Single a = 0.25644 Debug.Print TypeName(Round(a, 4)) Если вводить просто числа будет либо Integer, либо Double. Если явно указан тип переменной вернет того же типа.
0
|
|
|
Динохромный
1639 / 776 / 288
Регистрация: 22.12.2015
Сообщений: 2,431
|
||||||||
| 16.02.2023, 16:21 | ||||||||
0
|
||||||||
|
428 / 333 / 61
Регистрация: 29.06.2019
Сообщений: 493
|
|
| 16.02.2023, 16:24 | |
|
Nimael, а какой ответ вы ждете, округляя целое число до четвертого знака после запятой?
1,0000 ? Добавлено через 1 минуту Так это вам надо к FORMAT$ обращаться.
0
|
|
|
0 / 0 / 0
Регистрация: 16.02.2023
Сообщений: 13
|
|
| 16.02.2023, 16:32 [ТС] | |
|
Dinoxromniy,
В вашем примере 2 строка вернет integer, 3 вернет double. Dim a As Single a = 12 Debug.Print TypeName(Round(a, 4)) - вернет Single Debug.Print TypeName(Round(12.1, 4)) - вернет Double Debug.Print TypeName(Round(12, 4)) - вернет Integer Debug.Print TypeName(WorksheetFunction.Round(a, 4)) - вернет Double Debug.Print TypeName(WorksheetFunction.Round(12.1, 4)) - вернет Double Debug.Print TypeName(WorksheetFunction.Round(12, 4)) - вернет Double Добавлено через 3 минуты SergioJek, это к тому, что для функции Round не описано какой тип она возвращает в отличие от WorksheetFunction.Round.
0
|
|
|
Динохромный
1639 / 776 / 288
Регистрация: 22.12.2015
Сообщений: 2,431
|
||
| 16.02.2023, 16:36 | ||
|
Насколько я помню Кузьменко, результат операции будет иметь наименьшую размерность, имеющую требуемую точность. В других языках может быть другой алгоритм, я недавно писал про разницу с той же Java.
0
|
||
|
0 / 0 / 0
Регистрация: 16.02.2023
Сообщений: 13
|
|
| 16.02.2023, 16:40 [ТС] | |
|
Dinoxromniy, получается что результат операции все же не будет иметь наименьшую размерность, а будет зависеть от типа исходных данных. Если округляется переменная, тип данных который прямо указан, то он и вернется.
Приятного чаепития!
0
|
|
| 16.02.2023, 16:40 | |
|
Отображение данных в ячейке DataGridView Отображение формулы в ячейке vba
Отображение номера страницы в ячейке сквозной строки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|