在 Excel 工作表中插入新行时复制所有公式

Copy all formulas when inserting new row in Excel worksheet

我想在 Excel 工作表中插入新行时复制所有公式。我有一些计算公式,我正在从另一个 Excel 文件中获取一些值。

我在此 Excel 工作表中使用的公式如下:

  1. =IFERROR(VLOOKUP(C4,'list.xlsx]Sheet1'!$A:$L1,3,FALSE),"")

  2. =IFERROR(G6*F6,"")

我用谷歌搜索了解决方案。我有两个想法。

一个人用这些数据做一个 table。 我试过这个。公式 no:1 完美运行。但是第二个公式没有复制到下一行。

第二个使用VBA代码。只工作一次。下次打开 excel 时,我必须再次创建 VBA 代码。此外,它需要在单元格之间单击以创建下一行。

我想在右击 sl 编号(最左边的列)并单击 "insert" 时创建一个新行。

请帮忙。

抱歉,我是 SO 的新手,但我想帮助你:

  1. 您使用条件阻止例如:$A:$L1
  2. =IFERROR(G6*F6,"") 不复制任何东西
  3. 在 VBA 中你得到函数 PasteSpecial whats copeing a formulas from 细胞,这里有一些前。使用它:

    With Worksheets("YourWorksheet_name")
      .Range("Your_cell_input").Copy
       .Range("Your_cell_output").PasteSpecial Operation:=xlPasteSpecialOperationAdd
    End With
    
  4. 如果我很好地理解你想要一个 maro 什么在添加新杆时粘贴公式。我建议使用这样的东西:

    让我们做一个演示,你在 C 列上有公式来复制它(它影响 A 列)

    Private Sub Worksheet_Change(ByVal Target As Range)
    
      If Target.Column = ActiveCell.Column Then
        refRow = Target.Row - 1
        thisRow = Target.Row
        Range("C" & refRow).Copy Range("B" & thisRow)
      End If
    
    End Sub
    
  5. 无论如何,请添加更多您已有的代码或截图您所期望的