我正在尝试使用API发送短信 http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?username=username&password=password&sendername=sender id&mobileno = 919999999999&message = Hello
我想从“ d”从工作簿的sheet7中的单元格获取mobileno,光标将位于同一行。只希望从“ d”中提取值并将其用作移动电话号码。
我在mobileno中找到了一个与硬编码号码配合使用的代码,但是在尝试提取该值时出现错误。任何帮助将不胜感激
Sub SendSms()
Dim URL As String
Dim rng As Range
URL = "http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?username=username&password=password&sendername=sender id&mobileno=& ThisWorkbook.Worksheets(7).rng.Row("d:d").Value & "&message=Hi test"
Dim xml As Object
Set xml = CreateObject("MSXML2.XMLHTTP")
xml.Open "GET", URL, False
xml.Send
End Sub
我需要代码从“ d:d:”中提取值以进行选择并用作mobileno和sms发出。
ps;我是VBA的新手,如果无法正确解释,请对不起。
答案 0 :(得分:1)
首先,id&mobileno=
之后的引号必须为:
Url = "http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?username=username&password=password&sendername=sender id&mobileno=" & ThisWorkbook.Worksheets(7).Rng.Row("d:d").Value & "&message=Hi test"
第二,这不是单元格ThisWorkbook.Worksheets(7).Rng.Row("d:d").Value
的有效地址。因为d:d
是一整列,但是您只能将一个单元格值放入URL中,而不能整列。
因此您必须使用
这样的具体单元格ThisWorkbook.Worksheets(7).Range("D1").Value
或者您需要遍历D列以为D列中的每个号码发送短信。
注意:我将不做进一步解释,因为您会找到大量的教程如何遍历一列。
还要注意,Worksheets(7)
是选项卡列表中的7ᵗʰ工作表。如果有人重新排列选项卡,则您的代码将失败。最好使用标签名称Worksheets("MySheetName")
。