VBAmacros,从给定的范围循环获取URL

我的代码是目前设置的方式,它从我在代码中指出的URL获取数据。 不过,我实际上希望提供一个Sheet2中的URL列表,它将循环直到提取所有数据。 我不想每次单独更新代码每个URL。 有成千上万…我怎么能做到这一点?

这里是代码:

Public Sub exceljson() Dim https As Object, Json As Object, i As Integer Dim Item As Variant Set https = CreateObject("MSXML2.XMLHTTP") https.Open "GET", "https://min-api.cryptocompare.com/data/price?fsym=USD&tsyms=BTC", False https.Send Set Json = JsonConverter.ParseJson(https.responseText) i = 2 For Each Item In Json.Items Sheets(1).Cells(i, 2).Value = Item i = i + 1 Next MsgBox ("complete") End Sub 

我只是假装所有的URL都在列A中:

 Public Sub exceljson() Dim https As Object, Json As Object, i As Integer, j As Integer Dim Item As Variant Set https = CreateObject("MSXML2.XMLHTTP") For j = 1 to Sheets(2).UsedRange.Rows.count If Len(Trim$(Sheets(2).Cells(j, 1).Value2)) > 0 Then https.Open "GET", Trim$(Sheets(2).Cells(j, 1).Value2), False https.Send Set Json = JsonConverter.ParseJson(https.responseText) i = 2 For Each Item In Json.Items Sheets(1).Cells(i, 2).Value = Item i = i + 1 Next Item End If Next j MsgBox ("complete") End Sub 

我喜欢使用trim()方法来保证安全,因为我没有捕获任何额外的东西