我正在尝试在插入行后在单元格中输入公式。 VBA不希望这样,并返回错误。
我首先从excel表中复制了公式(用“;”作为分隔符),正如我在其他线程上看到的那样,我用“,”替换了那些。
我不明白为什么会收到错误。
Sub Borderx()
Dim nboc As Integer
Dim ipaste As Integer
nboc = Worksheets("BDD").Range("IQ2").Value
For ipaste = 1 To nboc - 1
Worksheets("Bordereaux").Range("B14").EntireRow.Insert
Worksheets("Bordereaux").Range("T14").Formula = "=IF(AND(J14="",E14=""),SUM(F14*F14*H14)/1000,IF(O14="",SUM((H14*F14*G14)+(M14*K14*L14))/1000,SUM((H14*F14*G14)+(M14*K14*L14)+(R14*P14*Q14))/1000))"
Next ipaste
End Sub
在这种情况下,nboc = 2,这应该插入一行。 在我添加“if”语句之前,它只是sum()
时工作正常答案 0 :(得分:0)
像这样改变:
Worksheets("Bordereaux").Range("T14").Formula = " =IF(AND(J14="""",E14=""""),SUM(F14*F14*H14)/1000,IF(O14="""",SUM((H14*F14*G14)+(M14*K14*L14))/1000,SUM((H14*F14*G14)+(M14*K14*L14)+(R14*P14*Q14))/1000))"