Excel VBA向SumIf添加新行

时间:2018-06-12 08:42:26

标签: excel vba excel-vba

在我的Excel工作簿中,我有一个表和一个用户窗体。使用UserForm我向表中添加新行。在最后一行,从我的表的“N”到“BI”我有一个SumIf公式。

所以当我添加新行时,SumIf Formula跳转到下一行,但我不知道如何编写将新行添加到SumIf公式的代码。

这是新行的代码:

Private Sub CommandButton1_Click()
    Dim lastrow As Long
    lastrow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row + 1

    ActiveSheet.Cells(lastrow, "A").EntireRow.Insert
    ActiveSheet.Cells(lastrow, "A").Value = TextBox1
    ActiveSheet.Cells(lastrow, "B").Value = TextBox2
    ActiveSheet.Cells(lastrow, "C").Value = TextBox3
    ActiveSheet.Cells(lastrow, "D").Value = TextBox4  

    AcitveSheet.Cells(lastrow + 1, Range("N:BI")).FormulaR1C1 = 'Here i don't know what to write

部分范围(“N:BI”)也会导致错误。我怎么写它有效呢?

希望有人可以帮助我。感谢

修改

对不起,我不在办公室。

enter image description here

在图片中你可以看到我的桌子。实际上,该表显示了机器的工作进度。使用A1和B1中的按钮,我可以添加新的作业。因此,新的分配将添加到第21行,而行N23到BI23(其中SumIf公式)将跳转到N24到BI24。

SumIf公式如下所示: = SUM(SUMIF($ K $ 3:$ K $ 19; N3; $ L $ 3:$ L $ 19; .... $ K $ 3:$ K $ 19; N20; $ L $ 3:$ L $ 19))

因此,如果我添加一个新行,我希望该公式添加下一行。这适用于从N列到BI

的所有列

我希望现在很清楚,有人可以帮助我。

0 个答案:

没有答案