如何在 vba 用户表单中以百分比格式输入 10-50 之间的数字文本框?

色达居伦美丽

我试图在 10-50 之间限制一个文本框,它必须是百分比数字格式。但是,当我在下面尝试这个代码时,它会向我输入的每个数字发送消息框。这个代码有什么问题?谢谢你。

        Private Sub TextBox4_Change()
        If(TextBox4.Value<50 And TextBox4.Value>5) Then
        TextBox4.Value = Format(TextBox4.Value, "0.00%")
        Else 
        Msgbox " Please enter the number between 10 -50"
        End Sub
皮肤

如果你想万无一失,还有一些事情要做。并不是说这 100% 是您想要的解决方案,但是在这段代码中有一些事情需要您自己考虑......

Private bIsChanging As Boolean

Private Sub TextBox4_Change()
    Dim dblValue As Double, bIsError As Boolean

    If TextBox4.Text = "" Then Exit Sub
    If bIsChanging Then Exit Sub

    bIsError = True

    If IsNumeric(TextBox4.Text) Then
        dblValue = CDbl(TextBox4.Value)

        If dblValue >= 0 And dblValue <= 50 Then
            bIsError = False
        End If
    End If

    If bIsError Then
        MsgBox "Please enter the number between 1 and 50."
    End If
End Sub

Private Sub TextBox4_Enter()
    On Error Resume Next

    Dim dblNewValue As Double, strFormat As String

    If TextBox4.Text = "" Then Exit Sub
    dblNewValue = CDbl(Replace(TextBox4.Value, "%", ""))

    strFormat = "0"

    If dblNewValue - (1 * (dblNewValue \ 1)) <> 0 Then
        strFormat = "0.00"
    End If

    bIsChanging = True
    TextBox4.Value = Format(dblNewValue, strFormat)
    bIsChanging = False
End Sub

Private Sub TextBox4_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    On Error Resume Next

    bIsChanging = True
    TextBox4.Value = Format(TextBox4.Value / 100, "0.00%")
    bIsChanging = False
End Sub

在此处输入图片说明

它使用进入和退出事件来尝试将单元格从输入重新格式化为输出。

我希望它有所帮助,我希望我已经对其进行了足够的测试以确保它运行良好。:-)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在MS Access中通过VBA填充文本框?

来自分类Dev

我需要在kendo ui数字文本框中输入百分比的1/10和1/100

来自分类Dev

VBA-如何在文本框中的特定位置设置光标?

来自分类Dev

如何在Access中为VBA中的顺序命名文本框动态分配变量

来自分类Dev

如何找到在文本框中输入的两个数字之间的差异?

来自分类Dev

如何在文本框的右侧开始输入数字?

来自分类Dev

仅从数字中阻止文本框VBA

来自分类Dev

如何在VBA中获得对文本框控件的引用而不是文本框的值

来自分类Dev

如何在熊猫数据框中插入百分比列?

来自分类Dev

如何在ggplot中向饼图添加数字和百分比

来自分类Dev

如何在PowerShell中使用输入文本框实现Windows 10 Toast通知

来自分类Dev

如何在熊猫数据框中绘制NaN百分比?

来自分类Dev

如何在Django的数字字段的文本框中删除数字增量

来自分类Dev

如何在多个元素之间分配百分比?

来自分类Dev

如何在Windows 10中为调整文本,应用程序和其他项目的大小输入自定义大小百分比

来自分类Dev

如何找到在文本框中输入的两个数字之间的差异?

来自分类Dev

如何计算百分比并在第三个文本框中显示?

来自分类Dev

如何在SmartGWT中验证仅数字文本框?

来自分类Dev

如何在运行时在vba中的用户窗体文本框中显示过滤后的值

来自分类Dev

如何在angularjs的文本框中只允许数字?

来自分类Dev

如何在VBA中的数字之间扩展

来自分类Dev

如何按Windows表单中的数字寻址文本框?

来自分类Dev

如何验证文本框中的文本和数字?

来自分类Dev

如何在 Pandas 数据框中创建带有百分比等的列

来自分类Dev

如何在文本框中使用几个数字键限制用户表单?

来自分类Dev

如何计算在文本框中输入的数字的 10% 并立即在 php 和 html 中的另一个文本框中显示结果

来自分类Dev

如何在 VBA (PowerPoint) 中的随机幻灯片上检查文本框中的文本?

来自分类Dev

如何使文本框仅接受 0-10 中的数字和小数部分中的仅 0.5?

来自分类Dev

如何在图中显示数据框中每列的最高百分比

Related 相关文章

  1. 1

    如何在MS Access中通过VBA填充文本框?

  2. 2

    我需要在kendo ui数字文本框中输入百分比的1/10和1/100

  3. 3

    VBA-如何在文本框中的特定位置设置光标?

  4. 4

    如何在Access中为VBA中的顺序命名文本框动态分配变量

  5. 5

    如何找到在文本框中输入的两个数字之间的差异?

  6. 6

    如何在文本框的右侧开始输入数字?

  7. 7

    仅从数字中阻止文本框VBA

  8. 8

    如何在VBA中获得对文本框控件的引用而不是文本框的值

  9. 9

    如何在熊猫数据框中插入百分比列?

  10. 10

    如何在ggplot中向饼图添加数字和百分比

  11. 11

    如何在PowerShell中使用输入文本框实现Windows 10 Toast通知

  12. 12

    如何在熊猫数据框中绘制NaN百分比?

  13. 13

    如何在Django的数字字段的文本框中删除数字增量

  14. 14

    如何在多个元素之间分配百分比?

  15. 15

    如何在Windows 10中为调整文本,应用程序和其他项目的大小输入自定义大小百分比

  16. 16

    如何找到在文本框中输入的两个数字之间的差异?

  17. 17

    如何计算百分比并在第三个文本框中显示?

  18. 18

    如何在SmartGWT中验证仅数字文本框?

  19. 19

    如何在运行时在vba中的用户窗体文本框中显示过滤后的值

  20. 20

    如何在angularjs的文本框中只允许数字?

  21. 21

    如何在VBA中的数字之间扩展

  22. 22

    如何按Windows表单中的数字寻址文本框?

  23. 23

    如何验证文本框中的文本和数字?

  24. 24

    如何在 Pandas 数据框中创建带有百分比等的列

  25. 25

    如何在文本框中使用几个数字键限制用户表单?

  26. 26

    如何计算在文本框中输入的数字的 10% 并立即在 php 和 html 中的另一个文本框中显示结果

  27. 27

    如何在 VBA (PowerPoint) 中的随机幻灯片上检查文本框中的文本?

  28. 28

    如何使文本框仅接受 0-10 中的数字和小数部分中的仅 0.5?

  29. 29

    如何在图中显示数据框中每列的最高百分比

热门标签

归档