我声明了 5 个整数
Public Hol_1 as integer
Public Hol_2 as integer
Public Hol_3 as integer
Public Hol_4 as integer
Public Hol_5 as integer
假设我有 3 个客户端,那么我将使用 Hol_1 到 Hol_3。这也意味着:iClients = 3
我需要做的第一件事是查看我的工作表(“假期”)以确定我的 3 个客户每个人有多少假期。
Sub CountHolidays()
Dim i as integer
Dim iclients as integer
iclients = 3
For i=1 to iclients
Hol_i = WorksheetFunction.CountA(ActiveWorkbook.Sheets("Holidays").Range(Cells(2, 3 + i), Cells(50, 3 + i)))
'The worksheetfunction calculates the amount of Holiday-dates I have for each of my three clients
Next i
End sub
我收到一个编译错误,提示 undefined variable :未定义 Hol_i。我尝试了 "Hol_"& i 和其他人,但无法纠正这个问题。有人有想法吗?谢谢
最佳答案
您不能连接变量名称。 Hol_i
是一个完全独立于 Hol_1
的变量即使 i=1
.
您需要一个数组来执行此操作:
Dim Hol(5) as Integer
For i=1 to iclients
Hol(i) = WorksheetFunction.CountA(ActiveWorkbook.Sheets("Holidays").Range(Cells(2, 3 + i), Cells(50, 3 + i)))
Next i
关于excel 2010 vba循环通过声明的变量语法导致编译错误变量未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14381873/