2016-12-15 4 views
0

データをURL文字列に連結し、その列のすべての行にコピーするVBスクリプトを作成しようとしています。私は大丈夫ですが、コードを埋めているが、私は私が間違って何をしているかわからないので、私は構文エラーを取得し続ける連結を追加しようとしている。私は2つのバージョンを試してみましたが、彼らの両方は、スクリプトの最後の行(右側)に私の構文エラーを与える:連結と評価のVB構文エラー

スクリプトバージョン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

私のコードを修正してくれてありがとうSh ai、まだ投稿ベストプラクティスを学ぶ。 – waterwalk77

+0

YowE3kは完璧です。どうもありがとうございます。 – waterwalk77

+0

コメントクリーンアップで削除されないように「回答」として投稿しました – YowE3K

答えて

1

文字列内の任意の二重引用符をエスケープする必要が2倍に二重引用符はそれほどマーク

"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"