Vba+Excel-форматирование ввода в контрол
Формулировка задачи:
Сел за Vba для Excel. Пока затык с обработкой форматирования данных.
В TextBox вводят значение. Необходимо обеспечить ввод только чисел в формате double.
Все что нашел, это FormatNumber.
В onExit контрола пишу
On Error GoTo Handler
mytextbox.Value = FormatNumber(mytextbox.Value,2)
Handler:
''вот еще вопрос попутный - как правильней обработать
MsgBox("ошибка")
mytextbox.SetFocus
В результате все вроде форматится, но обработать корректно не получается.
Фокус постоянно переходит "безсистемно". Покажите как правильно
В TextBox вводят значение. Необходимо обеспечить ввод только чисел в формате double.
Все что нашел, это FormatNumber.
В onExit контрола пишу
On Error GoTo Handler
mytextbox.Value = FormatNumber(mytextbox.Value,2)
Handler:
''вот еще вопрос попутный - как правильней обработать
MsgBox("ошибка")
mytextbox.SetFocus
В результате все вроде форматится, но обработать корректно не получается.
Фокус постоянно переходит "безсистемно". Покажите как правильно
Решение задачи: «Vba+Excel-форматирование ввода в контрол»
textual
Листинг программы
<font color="blue">Private</font> <font color="blue">Sub</font> TextBox1_BeforeUpdate(<font color="blue">ByVal</font> Cancel <font color="blue">As</font> MSForms.ReturnBoolean) <font color="blue">On</font> <font color="blue">Error</font> <font color="blue">GoTo</font> err_ <font color="blue">Dim</font> result <font color="blue">As</font> <font color="blue">Double</font> result = CDbl(TextBox1.Text) TextBox1.Text = FormatNumber(result, <font color="darkblue"><b>2</b></font>) exit_sub: <font color="blue">Exit</font> <font color="blue">Sub</font> err_: MsgBox <font color="teal">"Ошибка"</font> Cancel = True <font color="blue">End</font> <font color="blue">Sub</font>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д