【发布时间】:2014-03-01 14:13:55
【问题描述】:
Dim totalAllArr(99999999) As Integer
Public Sub SynchNow()
ListOfBooksTableAdapter.Fill(OJT_Project_LSDataSet.ListOfBooks)
For i = 0 To all - 1
totalAllArr(i) = OJT_Project_LSDataSet.Tables("ListOfBooks").Rows(i).Item("numberofcopy")
totalAll = totalAll + totalAllArr(i)
Next
End Sub
我使用此代码计算存储在 ListOfBooks 表中的所有书籍的总和
'这个有效
Dim totalAllArr(99999999) As Integer
'这个不行
将 totalAllArr() 调为整数
所以数组的最大边界只能存储 99999999 个值 如果书籍数量超过,肯定会抛出异常
可以使用任何其他数组结构吗?请!
【问题讨论】:
-
为什么需要数组?您可以在根本没有数组的情况下找到总和。另请注意,数组与 ArrayList 不同。
-
我必须这样做,因为字段名 numberofcopy 有它的每个值,所以我必须先将它存储在数组中
-
我根本不关注你。如果您只使用
totalAll = totalAll + OJT_Project_LSDataSet.Tables("ListOfBooks").Rows(i).Item("numberofcopy"),您认为会出现什么问题? -
谢谢!我要试试看。
-
嘿等等,问题出在数组中。计算正在运行。
标签: arrays vb.net vba indexoutofboundsexception