0
我想从一个单元格范围内的函数中定义的数组中计算特定的数字。这里是我的代码:VBA Excel类型不匹配
Function countNumbers(cell As Range)
Dim rCell As Range
Dim myArray(25) As Integer
myArray(0) = 1
myArray(1) = 2
myArray(2) = 3
myArray(3) = 4
myArray(4) = 5
myArray(5) = 11
myArray(6) = 12
myArray(7) = 13
myArray(8) = 14
myArray(9) = 15
myArray(10) = 21
myArray(11) = 22
myArray(12) = 23
myArray(13) = 24
myArray(14) = 25
myArray(15) = 31
myArray(16) = 32
myArray(17) = 33
myArray(18) = 34
myArray(19) = 35
myArray(20) = 41
myArray(21) = 42
myArray(22) = 43
myArray(23) = 44
myArray(24) = 45
For Each rCell In cell.Cells
For i = LBound(myArray) To UBound(myArray)
If rCell.Value = myArray Then
countNumbers = countNumbers + 1
End If
Next i
Next rCell
End Function
我得到的错误是“类型不匹配”在代码的第一行。我使用的MS-Excel 2007中感谢
你的循环中,修改行'如果rCell.Value = myArray的Then'到'如果rCell.Value = myArray的(I)Then'与您试图检查数组中的每个单元格的标准 –
另外,将Dim myArray(25)As Integer修改为Dim myArray(24)As Integer,否则最后一个元素将为空,并且所有空单元格都将进入您的'如果'标准。 –
@ShaiRado你可以添加你的更正作为接受它的答案,请! – KostasC