数组范围错误 - 经典ASP

时间:2015-10-08 12:54:53

标签: arrays vbscript asp-classic

我是Classic ASP的初学者。需要拆分由逗号分隔的许多电子邮件组成的字符串以及使用我稍后将生成的附加代码在表中插入(通过电子邮件发送电子邮件)的结果。每条记录都应该有一个电子邮件地址。 问题是我陷入了阵列范围错误。消息是:

  

Microsoft VBScript运行时错误' 800a0009'

     

下标超出范围:' WrdArray'

     

/NameOfFile.asp,第3行

任何提示都将受到高度赞赏。

Dim WrdArray()  
Dim txtToSplit 
WrdArray() = Split(txtToSplit,",")  
For i = LBound(WrdArray) To UBound(WrdArray)  
  strg = WrdArray(i)
  'CODE TO INSERT THE VALUE OF strg IN A RECORD OF THE TABLE
Next

1 个答案:

答案 0 :(得分:3)

您不需要动态数组,只需删除()即可声明一个标准变量,该变量在调用Split()时将成为变量数组。

Dim WrdArray
Dim txtToSplit 
WrdArray = Split(txtToSplit,",")  
For i = LBound(WrdArray) To UBound(WrdArray)  
  strg = WrdArray(i)
  'CODE TO INSERT THE VALUE OF strg IN A RECORD OF THE TABLE
Next

当您需要使用ReDim命令在运行时增加数组的大小时,将使用动态数组声明。在这种情况下,Split()将始终返回固定数量的结果,因此除非您计划稍后添加更多项目,否则无需使用动态数组。