Option Explicit'我勾选的变量强制生命复选框
Private Sub Form_click()
a% = 5'a% 表示a是整形,为什么还说变量未定义呢?这不算定义吗?
Print a%
End Sub
变量未定义
答案:6 悬赏:0
解决时间 2021-03-02 15:00
- 提问者网友:月葬花瑰
- 2021-03-02 02:05
最佳答案
- 二级知识专家网友:飘零作归宿
- 2021-03-02 03:27
Option Explicit
这句的意思就是要显式声明,a%虽然也是定义了,但这个是隐式的声明,所以出错
Option Explicit 语句
在模块级别中使用,强制显式声明模块中的所有变量。
语法
Option Explicit
说明
如果使用,Option Explicit 语句必须写在模块的所有过程之前。
如果模块中使用了 Option Explicit,则必须使用 Dim、Private、Public、ReDim 或 Static 语句来显式声明所有的变量。如果使用了未声明的变量名在编译时间会出现错误。
如果没有使用 Option Explicit 语句,除非使用 Deftype 语句指定了缺省类型,否则所有未声明的变量都是 Variant 类型的。
注意 使用 Option Explicit 可以避免在键入已有变量时出错,在变量的范围不是很清楚的代码中使用该语句可以避免混乱。
这句的意思就是要显式声明,a%虽然也是定义了,但这个是隐式的声明,所以出错
Option Explicit 语句
在模块级别中使用,强制显式声明模块中的所有变量。
语法
Option Explicit
说明
如果使用,Option Explicit 语句必须写在模块的所有过程之前。
如果模块中使用了 Option Explicit,则必须使用 Dim、Private、Public、ReDim 或 Static 语句来显式声明所有的变量。如果使用了未声明的变量名在编译时间会出现错误。
如果没有使用 Option Explicit 语句,除非使用 Deftype 语句指定了缺省类型,否则所有未声明的变量都是 Variant 类型的。
注意 使用 Option Explicit 可以避免在键入已有变量时出错,在变量的范围不是很清楚的代码中使用该语句可以避免混乱。
全部回答
- 1楼网友:无字情书
- 2021-03-02 07:26
你前面的a%在vb作为变量的,后面的a%是格式。所以前面的变量a%是没有定义的,Private Sub Form_click()
dim a% as integer
a% = 5’a%
Print a%
End Sub
- 2楼网友:陪衬角色
- 2021-03-02 07:16
哈哈……你就是没有声明啊……
至少要有 Dim 语句,VB 现在都直接不允许不声明直接用变量了,索然可以改回去……这不是个好习惯……
- 3楼网友:最后战士
- 2021-03-02 06:11
有Option Explicit表示显式声明;a% = 5'a% 这是隐式声明。必须用DIM来定义。
- 4楼网友:桃花别处起长歌
- 2021-03-02 05:14
你前面的a%在vb作为变量的,后面的a%是格式。所以前面的变量a%是没有定义的,Private Sub Form_click()
dim a% as integer
a% = 5’a%
Print a%
End Sub
我不太清楚
- 5楼网友:浪女动了心
- 2021-03-02 04:42
从程序来看,cm1应该是个公共对话框控件,即common dialog control,而你的窗体上没有加上这个控件,所以vb误以为你这个cm1是个未定义的变量了,一般照抄别人代码而又不知其所以然的都很容易出现这种情况的:-) 。
你可以在部件中选择microsoft common dialog control,然后放入窗体,再把它的名称改为cm1即可。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯