Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA Excel公式,错误1004_Excel_Excel Formula_Vba - Fatal编程技术网

VBA Excel公式,错误1004

VBA Excel公式,错误1004,excel,excel-formula,vba,Excel,Excel Formula,Vba,我试图在插入行后在单元格中输入公式。VBA不希望这样,并返回一个错误 我首先从excel工作表中复制了这个公式,(用“;”作为定界符),正如我在其他线程中看到的,我用“,”替换了这些公式 我不明白为什么我会出错 Sub Borderx() Dim nboc As Integer Dim ipaste As Integer nboc = Worksheets("BDD").Range("IQ2").Value For ipaste = 1 To nboc - 1 Worksheet

我试图在插入行后在单元格中输入公式。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()时,它工作得很好。

如下更改:

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))"

在公式中,每次使用
时都需要使用双引号,因此请改用