非功能性IF-Else VBA
根据用户表单上的条目尝试If Else的无智新手:非功能性IF-Else VBA,vba,excel,if-statement,Vba,Excel,If Statement,根据用户表单上的条目尝试If Else的无智新手: If OptionButtonMed.Value = True Then pp = pp + 2 ElseIf OptionButtonLarge = True Then pp = pp + 4 ElseIf OptionButtonXL = True Then pp = pp + 8 Else: pp End If 它根本不起作用。建议很有价值。您得到一个运行时错误,因为您的Else语句,您需要给pp一个有效值 如果
If OptionButtonMed.Value = True Then
pp = pp + 2
ElseIf OptionButtonLarge = True Then
pp = pp + 4
ElseIf OptionButtonXL = True Then
pp = pp + 8
Else: pp
End If
它根本不起作用。建议很有价值。您得到一个运行时错误,因为您的
Else
语句,您需要给pp
一个有效值
如果您尝试pp=pp+1
或任何值,它都会起作用
另外,在您尝试测试准则的控件之后保留.Value
也是一种很好的做法。(实际上不需要=True
)
将代码修改为:
If OptionButtonMed.Value Then
pp = pp + 2
ElseIf OptionButtonLarge.Value Then
pp = pp + 4
ElseIf OptionButtonXL.Value Then
pp = pp + 8
Else
pp = pp + 1 ' <-- just for example
End If
如果OptionButtonMed.Value,则
pp=pp+2
ElseIf OptionButtonLarge.Value然后
pp=pp+4
ElseIf OptionButtonXL.值然后
pp=pp+8
其他的
pp=pp+1'您得到一个运行时错误,因为您的Else
语句,您需要给pp
一个有效值
如果您尝试pp=pp+1
或任何值,它都会起作用
另外,在您尝试测试准则的控件之后保留.Value
也是一种很好的做法。(实际上不需要=True
)
将代码修改为:
If OptionButtonMed.Value Then
pp = pp + 2
ElseIf OptionButtonLarge.Value Then
pp = pp + 4
ElseIf OptionButtonXL.Value Then
pp = pp + 8
Else
pp = pp + 1 ' <-- just for example
End If
如果OptionButtonMed.Value,则
pp=pp+2
ElseIf OptionButtonLarge.Value然后
pp=pp+4
ElseIf OptionButtonXL.值然后
pp=pp+8
其他的
pp=pp+1'您的所有对象类型都是OptionButton
?这个代码放在哪里?可能是因为你丢失了。你的大按钮和XL按钮的价值…哎呀-添加了这些,仍然得到我的错误,甚至在此之前就中断了@m4sterbunny请发布代码的其余部分,如果您将其作为函数调用,但不返回任何值,那么实际上根本不需要进行任何计算。您可能希望在结束函数
之前包含一条语句calcCost=pp
来返回一个值。您的所有对象都是OptionButton
?这个代码放在哪里?可能是因为你丢失了。你的大按钮和XL按钮的价值…哎呀-添加了这些,仍然得到我的错误,甚至在此之前就中断了@m4sterbunny请发布代码的其余部分,如果您将其作为函数调用,但不返回任何值,那么实际上根本不需要进行任何计算。您可能希望通过在结束函数
之前包含语句calcCost=pp
来返回值。我遇到了编译错误:即使我给Else pp=pp+0@m4sterbunny哪里哪一行?你的代码在哪里?在一个命令\u按钮中
事件?似乎在某个地方给了我pp=0。但是你的建议是威兹!函数calcCost(pp)如果OptionButtonMed.Value则pp=pp+2 ElseIf OptionButtonLarge.Value则pp=pp+4 ElseIf OptionButtonXL.Value则pp=pp+8 Else:pp=pp*1 End如果End Function这是一个函数
?那还什么?你怎么称呼它?@m4sterbunny请发布你所有的代码,以及你调用函数的代码。让我知道你想要实现什么我得到了编译错误:期望的子,函数或属性,即使我给了Else pp=pp+0@m4sterbunny哪里哪一行?你的代码在哪里?在一个命令\u按钮中
事件?似乎在某个地方给了我pp=0。但是你的建议是威兹!函数calcCost(pp)如果OptionButtonMed.Value则pp=pp+2 ElseIf OptionButtonLarge.Value则pp=pp+4 ElseIf OptionButtonXL.Value则pp=pp+8 Else:pp=pp*1 End如果End Function这是一个函数
?那还什么?你怎么称呼它?@m4sterbunny请发布你所有的代码,以及你调用函数的代码。让我知道你想要实现什么