5,139
社区成员
发帖
与我相关
我的任务
分享
/**
*分析一下:
*有些编译器写VBA定义变量需要As Integer之类,可以修改,我这里是不需要的,注释有些用逗号',用些用双/你到时修改一下
*MsgBox dayi ,MsgBox后面是接字符串,想用day拼i,输出来的还是字符串,
*即day1,day2,day3,不会是变day1,day2,day3对应的值。
*解决办法:
*办法1:去判断i的值然后直接MsgBox具体的变量.如:getday_1()
*办法2:把变量定义成数组,根据下标来判断。如:getday_2()
*/
Call getday_1()
Call getday_2()
Sub getday_1()
Dim day1, day2, day3 ,day4
day1 = 6
day2 = 8
day3 = 10
day4 = 12
For i = 1 To 3
If i = 1 Then
MsgBox day1
ElseIf i = 2 Then
MsgBox day2
ElseIf i = 3 Then
MsgBox day3
Else
MsgBox "其它值"
End If
Next
End Sub
Sub getday_2()
a = array(6,8,10,12) //定义一个数组。
For i = 0 To ubound(a) //下标从0开始,所以把你的for i= 1改为 for i = 0
MsgBox a(i)
Next
End Sub