带公式的Excel 2010 VBA错误1004

bum*_*man 2 excel vba excel-vba excel-formula excel-2010

我有这个代码:

Dim fStrecke As String
fStrecke = "=A" & z & "*B" & z & "*C" & z
wks.Cells(z, "L").Formula = fStrecke

Dim fZeit As String
fZeit = "=IF(ISBLANK(H" & z & ");((A" & z & "*B" & z & "*I" & z & ")-I" & z & ")+(A" & z & "*B" & z & "*J" & z & ");(A" & z & "*B" & z & "*H" & z & "))"
wks.Cells(z, "K").Formula = fZeit
Run Code Online (Sandbox Code Playgroud)

第一个公式是工作,第二个公式我得到一个运行时错误1004.任何想法?我已将列K格式化为用户定义的"m:ss".

Dmi*_*liv 8

有两种选择:

  1. 使用.FormulaLocal财产:wks.Cells(z, "K").FormulaLocal = fZeit
  2. 使用逗号,作为分隔符而不是分号;(即使您的本地设置需要;作为标准分隔符):

fZeit = "=IF(ISBLANK(H" & z & "),((A" & z & "*B" & z & "*I" & z & ")-I" & z & ")+(A" & z & "*B" & z & "*J" & z & "),(A" & z & "*B" & z & "*H" & z & "))"
wks.Cells(z, "K").Formula = fZeit
Run Code Online (Sandbox Code Playgroud)