为了账号安全,请及时绑定邮箱和手机立即绑定

调试却发现总是出现“case else”中的情况?为什么?

调试却发现总是出现“case else”中的情况?为什么?

C
白猪掌柜的 2022-12-14 15:11:42
我想做一个BMI计算器,想套用一下case函数,但调试却发现总是出现“case else”中的情况,无论计算结果是什么,一下便是我用的完整代码,求解答:Private Sub Command1_Click()a = InputBox("请输入您的身高(单位:米)", "输入")b = InputBox("请输入您的体重(单位:公斤)", "输入")c = b / (a * a)text1.Text = cSelect Case cCase c < 18.5MsgBox ("消瘦,多吃点东西吧,别再减肥了!")Case 18.5 < c < 23.9MsgBox ("体重健康,继续保持哦!")Case 24 < c < 27.9MsgBox ("稍微重了一点儿,饮食上多加注意,多做运动哦!")Case ElseMsgBox ("太重了,该减肥了")End SelectEnd Sub
查看完整描述

2 回答

?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

Select Case语句的使用格式不对,这样修改就行了:
Private Sub Command1_Click()
a = InputBox("请输入您的身高(单位:米)", "输入")
b = InputBox("请输入您的体重(单位:公斤)", "输入")
c = b / (a * a)
Text1.Text = c
Select Case c
Case Is < 18.5
MsgBox ("消瘦,多吃点东西吧,别再减肥了!")
Case 18.5 To 23.9
MsgBox ("体重健康,继续保持哦!")
Case 24 To 27.9
MsgBox ("稍微重了一点儿,饮食上多加注意,多做运动哦!")
Case Else
MsgBox ("太重了,该减肥了")
End Select
End Sub

查看完整回答
反对 回复 2022-12-18
?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

case后边应该是常量值而不是表达式。
下边是一个例子
select case c
case 1
case 2
case 3
case else

end select
你的select case 应该改成if语句

if c<18.5 then
MsgBox ("消瘦,多吃点东西吧,别再减肥了!")

else
if c>18.5 and c<23.9 then
MsgBox ("体重健康,继续保持哦!")

else
if 24 < c and c< 27.9 then

MsgBox ("稍微重了一点儿,饮食上多加注意,多做运动哦!")

else
MsgBox ("太重了,该减肥了")

end if
end if

end if

 


查看完整回答
反对 回复 2022-12-18
  • 2 回答
  • 0 关注
  • 64 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信