4es*_*est 2 double excel vba type-conversion excel-vba
我将TextBox放入我的表单中,用户可以在其中输入值.在VBA中,我需要将值从string转换为double.
我这样做:
Private Sub UserForm_Initialize()
'....some code
Dim new_value As Double
new_value = CDbl(TextBox6.Value)
End sub
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
CDbl期望已经是一个数字,但如果文本框为空,TextBox6.Value则为空字符串.CDbl无法将空字符串转换为double.
您可以首先验证文本框是否为数字值以避免这种情况
If IsNumeric(TextBox6.Value) Then
new_value = CDbl(TextBox6.Value)
Else
new_value = 0
End If
Run Code Online (Sandbox Code Playgroud)
或者,该Val()功能可能是您的选择.
new_value = Val(TextBox6.Value)
Run Code Online (Sandbox Code Playgroud)