2016-03-26 48 views
0

我要求用戶輸入一個字符串,然後需要將其合併到公式中。我搜索了其他問題,但沒有得到想要的結果。如何在公式中使用包含字符串的變量vba

Sname = InputBox("Enter name") 

Cells(2, 32).FormulaR1C1 = _ 
=CONCATENATE(J2,""-"",K2,""-"",L2,""-"" "" & Sname & "" -"",T2,U2,V2,W2,X2,Y2,""-"",AB2,""-"",AC2) 

假設我進入AAA
我想對細胞(2,32)的公式是

=CONCATENATE(J2,"-",K2,"-",L2,"-" & "AAA" & "-",T2,U2,V2,W2,X2,Y2,"-",AB2,"-",AC2) 
+0

可能重複[引號VBA](http://stackoverflow.com/questions/24454575/quotation-marks-vba) – vacip

+0

@vacip我有雙引號嗎?還是我沒有得到什麼? 單引號出現在單元格後,我也運行宏 '= CONCATENATE('J2',「 - 」,'K2',「 - 」,'L2',「 - 」,「&Sname&」, 「 - 」,「T2」,「U2」,「V2」,「W2」,「X2」,「Y2」,「 - 」,「AB2」,「 - 」,「AC2」) 我運行模塊後顯示單元格。該變量的名字也被顯示爲「Sname」,它希望它顯示我輸入的內容 –

+0

@vacip確實存在部分問題,但正如我在sythr的回覆中所說的,我不能將Sname變量值寫入公式 –

回答

2

試試這個:

Cells(2,32).Formula = _ 
"=CONCATENATE(J2,""-"",K2,""-"",L2,""-"" & """ & Sname & """ & ""-"",T2,U2,V2,W2,X2,Y2,""-"",AB2,""-"",AC2)" 

有一個輕微的mixup您變量周圍的引號。

這一個適合我。

+0

'= CONCATENATE(J2,「 - 」,K2,「 - 」,L2, - 「&」Sname「&」 - 「,T2,U2,V2,W2,X2,Y2,」 - 「,AB2 ,「 - 」,AC2)'這是出現在單元格上的公式。 'Sname = InputBox(「Enter name」)'將由用戶指定,如果他們輸入AAA,我希望單元格中的forumla爲 '= CONCATENATE(J2,「 - 」,K2,「 - 「,L2,」 - 「和」AAA「和」 - 「,T2,U2,V2,W2,X2,Y2,」 - 「,AB2,」 - 「,AC2)' –

+0

我的不好。編輯。引號會讓你混淆。 :) – vacip

+0

謝謝你這麼多^ _^ive剛剛學習了VB幾個星期,難怪它會讓人困惑,像你一樣好,我很難過。 –

相關問題