2017-07-02 4 views
2

Ich versuche, eine Formel in Excel mit VBA zu schreiben. Der Zweck dieser Formel besteht darin, das "-", "+", "#" und "" in der in Zelle D2 vorhandenen Kette zu eliminieren.Excel VBA "Erwartet: Ende der Anweisung" Fehler

Wenn ich diese Formel in Zelle P2 einfügen, funktioniert es wie gewünscht. Bei Verwendung des obigen Codes wird jedoch der Kompilierfehler "Erwartet: Ende der Anweisung" angezeigt.

Was ist die Ursache für diesen Fehler?

+0

Sie benötigen Zelle verwenden = WorksheetFunction.Substitute (D2, "-", "") – yass

+0

@yass Es scheint, dass doppelte Anführungszeichen in VBA maskiert werden müssen. Siehe die Antwort, die ich zu dieser Frage gepostet habe. – Osama

Antwort

3

Gefunden der Fehler, so scheint es, dass die doppelten Anführungszeichen verdoppelt werden müssen, etwa so:

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