Форматирование текстового поля в VBA 4 знака после запятой - PullRequest
0 голосов
/ 29 сентября 2011

В любом случае можно ли отформатировать формат текстового поля так, чтобы он всегда имел четыре десятичных знака?Я знаю, как сделать это с C # и Visual Basic, используя замаскированное текстовое поле, но vba немного сложнее из-за отсутствия функции.Любая помощь будет принята с благодарностью.Спасибо

Public Sub UserForm_Initialize()
TextBox6.Text = Format(Number, "###.####")
End Sub

Ответы [ 2 ]

6 голосов
/ 29 сентября 2011

У вас просто неверная строка формата. Это должно выглядеть так:

Public Sub UserForm_Initialize()
    TextBox6.Text = Format(Number, "0.0000")
End Sub
1 голос
/ 29 сентября 2011

Попробуйте:

Public Sub UserForm_Initialize()
     TextBox6.Text = Format(Number, "0.0000")
End Sub

Private Sub TextBox6_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    If IsNumeric(TextBox6.Value) Then
        TextBox6.Text = Format(TextBox6, "0.0000")
    End If
End Sub

Private Sub TextBox6_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    '// Disregard keys other than 0-9/period/minus sign.
    If Shift Then KeyCode = 0
    Select Case KeyCode
    Case 8, 13, 46, 48 To 57, 96 To 105, 109, 110, 189, 190
    Case Else
        KeyCode = 0
    End Select
End Sub
...