在excel/VBA中的所有列上运行脚本

在excel/VBA中的所有列上运行脚本,vba,http,excel,put,Vba,Http,Excel,Put,因此,我有一个HTTP PUT请求,需要在大量数据上运行。50000+个电池 所有这些都包含在两行,大约25000列中。第一行是要放入的HTTP URL,第二行是作为请求的较大字符串的一部分的数据 假设我的工作表的前两列如下所示,其中单元格通过逗号分隔 Location1, Sample Data 1 Location2, Sample Data 2 我将向domain.com/API/Location1发送一个PUT请求,其中包含字符串data=Sample data 1,其中domain.

因此,我有一个HTTP PUT请求,需要在大量数据上运行。50000+个电池

所有这些都包含在两行,大约25000列中。第一行是要放入的HTTP URL,第二行是作为请求的较大字符串的一部分的数据

假设我的工作表的前两列如下所示,其中单元格通过逗号分隔

Location1, Sample Data 1
Location2, Sample Data 2
我将向domain.com/API/Location1发送一个PUT请求,其中包含字符串data=Sample data 1,其中domain.com/API/是一个常量,data=也是一个常量

由于对excel了解不够,我只创建了一个按钮来调用我的代码。我仍然在想如何在代码中插入单元格数据

Private Sub CommandButton1_Click()

URL = "https://domain.com/api/Location1" 
DATA = "here_is_a_long_string_specifying_the_value_to_modify=Sample Data 1"
   Set HTTP = CreateObject("Microsoft.XMLHTTP")
   HTTP.Open "PUT", URL, False
   HTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
   HTTP.send REQUEST

End Sub
最终,我希望它做一些类似URL=1,x的事情

然后继续进行列表,所以1,1,然后1,2和1,3,等等


此时我不确定将搜索指向何处

如果我理解正确,这可能会有帮助:

在Excel VBA中获取单元格数据:

cells(rowindex,columnindex).value

URL = "https://domain.com/api/" & cells(1,1).value
DATA = "yaddayadda=" & cells(2,1).value
在此添加一个for循环,就可以开始了:

For i = 1 To Cells(1, 1).End(xlToRight).Column 'assuming your cells are continously filled
 URL = "https://domain.com/api/" & Cells(1, i).Value
 DATA = "yaddayadda=" & Cells(2, i).Value
Next i

零件查找最后一个填充单元格的列号,从单元格A1开始,向右移动


希望这有帮助,我没有完全误解你的问题

所以,我的脚本开始工作了

x=0
While x < 25000
x = (x + 1)
URL = "https://domain.com/api/" Sheet1.Cells(x, 1)
DATA = "string_of_data=" Sheet1.Cells(x, 1)
   set HTTP = CreateObject("Microsoft.XMLHTTP")
   HTTP.Open "PUT", URL, False, "Login", "Password"
   HTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
   HTTP.send DATA
wend

你真的有25k列吗?我以为最大值约为16k。它全部包含在多张纸上。这是一个近似值,表明这个项目有多大。顺便说一句,谢谢你的编辑。另外,你可能想转置你的数据,Excel向下的长度比它的宽度要长。嘿!非常感谢您的回复。我稍后会试试这个。我也发布了我自己的答案,以防你想看到我的方法。我的有点过时了,希望我能利用你的,并在这个过程中学到一些新东西
x=0
While x < 25000
x = (x + 1)
URL = "https://domain.com/api/" Sheet1.Cells(x, 1)
DATA = "string_of_data=" Sheet1.Cells(x, 1)
   set HTTP = CreateObject("Microsoft.XMLHTTP")
   HTTP.Open "PUT", URL, False, "Login", "Password"
   HTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
   HTTP.send DATA
wend