Страницы: 1
RSS
Применение формата 1.XXX,78 в формулах VBA
 
Добрый день.
Задача:
Есть числа в формате "1.234,56"  ,  которые я вставляю в VBA форму и далее мне нужно это число посчитать в моей формуле и вывести её в другое поле TextBox.
При применении Val(TextBox.Value) у меня считать отказывается.
При удалении точки, он игнорирует числа после запятой. При удалении запятой он считает, но соответственно не так как нужно мне.
Если считать в таблицах с таким форматом чисел, я просто поменял системный разделитель и всё работает.
Насколько я вычитал, изменение этого параметра через модуль всё равно ничего не даст, поскольку он только для показа в ячейках.
Возможно ли что-то кроме применения SUBSTITUTE? А если пользователь ввёл число сам на английской раскладке тогда выйдет не то, что он хотел.
И как правильнее это сделать?

Я новичок и только учусь, не нашёл похожей темы, которая бы мне помогла.
Изменено: Владислав - 13.11.2020 22:36:37
 
правильно это делается так:
контролируете ввод данных пользователем и не принимаете не корректные данные
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
CDbl(Replace("1.234,56",".","",,1,0))
Страницы: 1
Наверх