Excel vba中比较负数的问题
我还是VBA新手,我确信这是一个简单的问题,但我比较的是负数较小的负数,例如,如果我将textboxMIN输入到-7,将textboxMAX输入到-1,结果将是-1将小于-7。我不知道如何解决它,因为对我来说,条件是正确的,但结果不是。请看一下我的代码是否有问题Excel vba中比较负数的问题,excel,vba,Excel,Vba,我还是VBA新手,我确信这是一个简单的问题,但我比较的是负数较小的负数,例如,如果我将textboxMIN输入到-7,将textboxMAX输入到-1,结果将是-1将小于-7。我不知道如何解决它,因为对我来说,条件是正确的,但结果不是。请看一下我的代码是否有问题 '/************PROCESS***************/ For t_int_iteratorI = 0 To txt_NumOperands.Value - 1 MultiPage1.P
'/************PROCESS***************/
For t_int_iteratorI = 0 To txt_NumOperands.Value - 1
MultiPage1.Pages.Add
MultiPage1.Pages(t_int_iteratorI).Caption = "Variable" & t_int_iteratorI + 1
Call sub_LabelPerPage
Set p_var_SetTxtBox = frm_RangeForm.MultiPage1.Pages(t_int_iteratorI).Controls.Add("Forms.TextBox.1", "MinBox")
With p_var_SetTxtBox
.Top = 50
.Left = 100
End With
Set p_var_SetTxtBox = frm_RangeForm.MultiPage1.Pages(t_int_iteratorI).Controls.Add("Forms.TextBox.1", "MaxBox")
With p_var_SetTxtBox
.Top = 50
.Left = 300
End With
Next t_int_iteratorI
p_var_MaxValue = frm_RangeForm.MultiPage1.Pages(t_int_iteratorI).maxbox.Value
p_var_MinValue = frm_RangeForm.MultiPage1.Pages(t_int_iteratorI).MinBox.Value
If p_var_MinValue > p_var_MaxValue Then
MsgBox "MIN value should be lesser than MAX value."
Exit Sub
End If
提前谢谢你 请记住,表单上的文本框包含看起来像数字而不是实际数字的字符串值。在比较它们之前,您可能希望使用
Int(x)
函数或类似的方法将它们转换为整数(转换为新变量)。@braX谢谢!我做到了,我的变量被设置为variant,我认为可以将它们设置为variant,这样就可以避免溢出。@VinIsLearning variant(几乎)从来都不是一个好的解决方案。只有在没有其他选项时才使用它。我建议始终激活选项显式
:在VBA编辑器中,转到工具›选项›并正确声明所有变量。@Pᴇʜ感谢您提供的信息,尤其是明确的选项,我在使用“变体”时应小心。非常感谢。