2017-07-02 182 views
2

我想在Excel中使用VBA編寫公式。此公式的目的是消除單元格D2中存在的字符串中的「 - 」,「+」,「#」和「」。Excel VBA「預期:語句結束」錯誤

Range("P2").Formula = "=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"-",""),"+",""),"#","")," ","")" 

當我將此公式粘貼到單元格P2中時,它按預期工作。但是,使用上述代碼時,將顯示編譯錯誤「預期:語句結束」。

這個錯誤的原因是什麼?

+0

你需要使用電池= WorksheetFunction.Substitute(D2, 「 - 」, 「」) – yass

+0

@yass看來,雙引號必須在VBA中逃脫。看到我發佈到這個問題的答案。 – Osama

回答

3

發現錯誤,似乎雙引號必須加倍,例如:

Range("P2").Formula = "=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,""-"",""""),""+"",""""),""#"",""""),"" "","""")" 
相關問題