我的任务是编写一个vbscript脚本,它可以打开一个.csv文件,将数据读入一个数组中,使用该数据执行函数,然后将更新后的数据返回到同一文件中。我相信我已经完成了除了从文件读取数据的函数之外的所有工作。
我的问题是:当我尝试使用这段代码时,我会收到运行时错误。当前脚本出现类型不匹配的错误。我尝试修改代码以获取不同的运行时错误。
关于此代码的几点说明:
- 我希望它跳过csv文件的第一行,因为它是永远不会更改的标题。
- 恰好有12个字段。然而,行数是动态的,每个输入文件都会改变。
我的读取文件代码如下:
Function BuildArrayFromCsv(filepath) 'Function to read file and load into an array
Const ForReading = 1 ' Declare constant for reading for more clarity
Set inputFile = FileSysObj.OpenTextFile(filepath, ForReading, True) ' Set inputFile as file to be read from
Dim row, column
Dim fields(11) '12 fields per line
inputFile.ReadAll 'read to end of file
ReDim MyArray(11,inputFile.Line-2) 'current line, minus one for header, and minus one for starting at zero
inputFile.close 'close file so that MyArray can be filled with data starting at the top
Set inputFile = FileSysObj.OpenTextFile(filepath, ForReading, True) 'back at top
inputFile.ReadLine 'skip header
Do Until inputFile.AtEndOfStream
fields = Split(inputFile.Readline,",") 'store line in temp array
For column = 0 To 11 'iterate through the fields of the temp array
myArray(row,column) = fields(column) 'store each field in the 2D array with the given coordinates
Next
row = row + 1 'next line
Loop
inputFile.close
End Function