2012-04-13 15 views
9

Ho provato a inserire il seguente codice in un programma ieri. VBA ha chiamato un errore. Presumo che sia a causa delle doppie virgolette all'interno della formula. Ho cercato su Google e tutti i risultati che ho trovato hanno dato le basi per inserire le formule, ma nessuno ha spiegato come aggirare le virgolette all'interno.Excel (2007) VBA - .Formula con citazioni in esso

(c'era a Con dichiarazione prima di questo, Pivot è un nome del foglio di lavoro)

.Range("A2").Formula = "=IF(Pivot!A5="",A1,Pivot!A5)" 

Ogni aiuto è molto apprezzato. Grazie!

risposta

21

In caso di dubbio, registrare una macro se permette :)

Prova questa

.Range("A2").Formula = "=IF(Pivot!A5="""",A1,Pivot!A5)" 
+0

Buon punto per il registratore di macro. Inoltre, il tuo codice funziona ed è il più pulito di tutte le risposte. Grazie. – Graphth

1

potrebbe essere necessario fare questo:

.Range("A2").Formula = "=IF(Pivot!A5="& """" & """" & ",A1,Pivot!A5)" 
2

Usa Chr(34) al posto di una doppia -citazione.

Quindi nel tuo caso:

.Range("A2").Formula = "=IF(Pivot!A5=" & Chr(34) & Chr(34) & ",A1,Pivot!A5)"