首先,我試圖查看使用VBA添加公式的所有其他示例,並且我認爲我已嘗試在此代碼中應用所有答案在Excel中使用VBA插入公式不起作用
Sub AddFormulas(SheetName As String)
Dim i As Integer
'Switch worksheet
Set Wksht = ThisWorkbook.Worksheets(SheetName)
Wksht.Activate
Application.Calculation = xlCalculationManual
i = 2
While Not IsEmpty(Cells(i, 1))
Wksht.Cells(i, 18).Formula = "=IFERROR(VLOOKUP(A" & i & ";" & Wksht.Cells(1, 18) & "!$A:$A;1;FALSE);" & Chr(34) & "MISSING" & Chr(34) & ")"
i = i + 1
Wend
Application.Calculation = xlCalculationAutomatic
End Sub
如果我改變我行
Wksht.Cells(i, 18) = "'IFERROR(VLOOKUP(A" & i & ";" & Wksht.Cells(1, 18) & "!$A:$A;1;FALSE);" & Chr(34) & "MISSING" & Chr(34) & ")"
然後時I g等沒有錯誤,並添加了正確的公式,雖然作爲文本字符串
什麼是錯的,因爲它不會添加什麼對我來說看起來像一個有效的公式?
// V
通過VBA插入時,必須使用英文版公式。所以'''應該是','。 – YowE3K
您應該在'Wksht.Cells(x,x)'後面使用'.Formula'或'.Formulalocal'或'.Value'或'.Text'' – Tibo