我有以下代码:

Dim tarifa As Double
tarifa = Sheets("OD Tarifa").Cells(fila, 5 + r).value
Cells(j, r + 10).FormulaR1C1 = _
                "=" & tarifa & "-" & "SUMIF(C[-6],RC[-6],C[-3])+SUMIF(C[-6],RC[-6],C[-2])+SUMIF(C[-6],RC[-6],C[-1])"


其中tarifa使用逗号作为小数点分隔符(例如1,5)保存,因此,当VBA尝试编写公式时,它将引发错误。例如,如果我手动将tarifa替换为1.5,则没有错误。我该怎么解决?

最佳答案

一种方法是使用FormulaR1C1Local代替FormulaR1C1

Dim tarifa As Double
tarifa = Cells(1, 2).Value
Cells(2, 2).FormulaR1C1Local = "=" & tarifa

10-08 19:57