明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1825|回复: 6

if 命令和 case 命令,为什么会这样?

[复制链接]
发表于 2004-6-28 15:38:00 | 显示全部楼层 |阅读模式
xx=100


if xx=100 then


....


endif


select case xx


case 100


...


end select


为什么我将xx设定为100,用if 命令不能执行,用case 命令能执行,何也?两者到底有什么不同之外?
发表于 2004-6-28 15:59:00 | 显示全部楼层
完整一点的代码可以传上么 我这样可以 Sub h() Dim a As String a = 100
If a = 100 Then
MsgBox "True1"
End If End Sub
发表于 2004-6-28 19:15:00 | 显示全部楼层
对啊,请贴全一点的代码。这一段是没有问题的。


另外,end if中应该有一个空格的。
 楼主| 发表于 2004-6-28 20:28:00 | 显示全部楼层
完整的代码太长了,传上是没问题,要找出也很困难。对不起上面的贴子说错了,不是上面所说而是:


上面两个都能执行。


但xx=100


select case xx


case xx=100


......


end select 不能执行


将case xx=100 改为case 100就得执行,但没提示有语法错误。何也??


难道case xx=100是精确等于吗?要全部匹配还是什么的。
发表于 2004-6-28 20:38:00 | 显示全部楼层
select case xx


case xx=100


......


end select


语法错


应该是


select case xx


case 100


......


end select


case x=100


相当于case True(X=100时)
 楼主| 发表于 2004-6-28 20:48:00 | 显示全部楼层
很感谢,另外我还想问一下


case xx=100


其中xx是字符还是数值。


如果dim xx as interage ‘定义xx为整形数


xx=100


case xx=100 能执行下面的语句吗?如果不定为xx为定整形数,则xx=100哪么xx是字符串还是数值?
发表于 2004-6-28 20:51:00 | 显示全部楼层
VBA的Case语句的参数是整型


默认的,它会把能够转化为整型的数据转化为整型
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 04:43 , Processed in 0.149308 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表