Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 在声明vb6时初始化整数值_Vba_Vb6 - Fatal编程技术网

Vba 在声明vb6时初始化整数值

Vba 在声明vb6时初始化整数值,vba,vb6,Vba,Vb6,在声明期间如何初始化变量值 我用的是VB6, 我试过了 公共i作为整数=0 但我犯了个错误 应为:语句结尾,突出显示“=” 我想将初始值设置为0 根据评论编辑: 我想在没有数据库帮助的情况下创建一个登录表单 模块:因此我创建了一个用户名(1到10)——数组和密码(1到10)数组 form1每次I的值递增时,我想注册最多10个用户//form//I=1 register\u user(I)=取消注册\u pass(I)=upass i=i+1//end//但每次我转到该表单时,值都会再次设置为1,

在声明期间如何初始化变量值

我用的是VB6, 我试过了

公共i作为整数=0

但我犯了个错误

应为:语句结尾,突出显示“=”

我想将初始值设置为0

根据评论编辑:

我想在没有数据库帮助的情况下创建一个登录表单

模块:因此我创建了一个用户名(1到10)——数组和密码(1到10)数组


form1每次I的值递增时,我想注册最多10个用户//form//I=1 register\u user(I)=取消注册\u pass(I)=upass i=i+1//end//但每次我转到该表单时,值都会再次设置为1,我该怎么办。

我认为问题在于您试图在声明时实例化一个公共变量…
Dim i作为整数:i=1
起作用,但不是公共的。您可以这样做,也可以声明公共变量,然后在子部分的第一行实例化它。

在VBA和VB6中,您不能初始化变量。必须使用可执行语句

但是,每个变量都有一个默认的初始化值

从:

初始化变量时,数值变量初始化为 0时,可变长度字符串被初始化为零长度字符串 (“”),固定长度的字符串用零填充。变体 变量被初始化为空。用户定义文档的每个元素 类型变量被初始化为一个单独的变量

所以实际上,在你的情况下

public i as integer = 0
不起作用,但下一个步骤确实起作用,而且就是这样:

public i as integer

Vacip的回答是,按照您的要求将其设置为0,但要在此基础上继续。。。如果您需要一个公共变量以默认值以外的值开始,您可以在子变量中第一次调用它时将其设置为该值

如果您有多个sub可能第一次调用它,然后它被来回传递,那么您需要检查以确保它尚未被设置。您可以使用公共布尔值来实现这一点

如果你打开你的本地人,并通过这一步,你可以看到一种方法来做到这一点

Public iTesti As Integer 'defaults to 0
Public bTesti As Boolean 'defaults to FALSE

Public Sub testi()
If bTesti = False Then 'btesti is false and iteseti is 0
    iTesti = 1
    bTesti = True
End If
iTesti = 2
testi2
End Sub

Public Sub testi2()
If bTesti = False Then 'btesti is true and itesti is 2
    iTesti = 1
    bTesti = True
End If
iTesti = 3
End Sub

这就是我想做的。。我想在没有数据库帮助的情况下创建一个登录表单。。模块//因此我创建了一个用户名(1到10)--数组和密码(1到10)数组结束模块//然后在形式1//中,每次i的值递增时,我想注册最多10个用户//形式//i=1 register\u user(i)=uname register\u pass(i)=upass i=i+1//end//但每次我转到该表单时,值都会再次设置为1我该怎么办。@M.Jags您应该在问题中包含此类信息,方法是使用下面的“编辑”链接。我已经复制了你在这里发布的内容,但我认为它的格式可以更好、更完整。因为我不完全确定你的意思,我或多或少地把它保留了下来,希望你能把它清理干净……这就是你的答案。“初始化变量时,数值变量将初始化为0。”如果尚未打开“局部变量”窗口,请转到相关子窗口。按F8键一次,进入该窗口并查看公共变量。它已被设置为0。这是整数的默认值。另请参见: