VBA Excel 中的运行时错误 9“下标超出范围”

问题描述

每次在 VBA Excel 中运行代码时,我都会收到“运行时错误 9。下标超出范围”。 A line gets highlighted when I click on debug as shown here

这是代码

 tickerURL = "https://query1.finance.yahoo.com/v7/finance/download/" & Symbols & _
    "?period1=" & startDate & _
    "&period2=" & endDate & _
    "&interval=" & period & "&events=history" & "&crumb=" & crumb
           
Set objRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
With objRequest
    .Open "GET",tickerURL,False
    .setRequestHeader "Cookie",cookie
    .send
    .waitForResponse
    resultFromYahoo = .ResponseText
End With

nColumns = 6
csv_rows() = Split(resultFromYahoo,Chr(10))
csv_rows = Filter(csv_rows,csv_rows(0),False)

ReDim resultArray(0 To UBound(csv_rows),0 To nColumns) As Variant
 
For iRows = LBound(csv_rows) To UBound(csv_rows)
    CSV_Fields = Split(csv_rows(iRows),",")
    If UBound(CSV_Fields) > nColumns Then
        nColumns = UBound(CSV_Fields)
        ReDim Preserve resultArray(0 To UBound(csv_rows),0 To nColumns) As Variant
    End If

    For iCols = LBound(CSV_Fields) To UBound(CSV_Fields)
        If IsNumeric(CSV_Fields(iCols)) Then
            resultArray(iRows,iCols) = Val(CSV_Fields(iCols))
        ElseIf IsDate(CSV_Fields(iCols)) Then
            resultArray(iRows,iCols) = CDate(CSV_Fields(iCols))
        Else
            resultArray(iRows,iCols) = CStr(CSV_Fields(iCols))
        End If
    Next
Next

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)