我正在尝试编写一个VB脚本,将数据连接成一个url字符串,然后我希望它复制到该列的所有行。我有填充代码工作正常,但当我尝试添加连接时,我不断收到语法错误,所以我不确定我做错了什么。我尝试了两个版本,它们都在脚本的最后一行(右侧)给出了语法错误:
脚本版本1:
Sub SetSurveyLink()
' SetSurveyLink Macro
Dim lngLastRow As Long
lngLastRow = Cells(Rows.Count, "A").End(xlUp).Row
Range("C3:C" & lngLastRow).Value = EVALUATE("https://domainname.com/survey/?PartName=" & 'Client List'!B1 & "&ClientID="&B2)
End Sub
脚本版本2:
Sub SetSurveyLink()
' SetSurveyLink Macro
Dim lngLastRow As Long
lngLastRow = Cells(Rows.Count, "A").End(xlUp).Row
Range("C3:C" & lngLastRow).Value = CONCATENATE("https://domainname.com/survey/?PartName=",'Client List'!B1,"&ClientID=",B2)
End Sub
'concatenate'字符串在单元格中使用时给出了正确的值(即不作为脚本的一部分),但我无法让它在脚本中工作。看到我的语法中缺少的任何内容?
谢谢!
答案 0 :(得分:1)
字符串中的任何双引号都需要转义为双引号,所以,如果
"https://domainname.com/survey/?PartName=" & 'Client List'!B1 & "&ClientID="&B2
在Excel中工作,它变为
""https://domainname.com/survey/?PartName="" & 'Client List'!B1 & ""&ClientID=""&B2
然后你需要将它括在双引号内,使它成为VBA中的字符串文字,即
"""https://domainname.com/survey/?PartName="" & 'Client List'!B1 & ""&ClientID=""&B2"