如果单元格值更改,请将值复制到另一个工作表

时间:2015-08-12 18:59:24

标签: excel vba excel-vba

我创建了一个项目管理模板,我定期更新项目的状态。

我希望只要一个单元格的单元格值发生更改,就会将确切的值复制到另一个工作表上的单元格中。

如果再次更改原始单元格的单元格值(由于进一步的项目更新),我希望再次复制该值,但是在前一个副本之下,依此类推。

由于我想自己解决这个问题,如果你能给我一些关于如何继续或在哪里寻找的提示,我会很高兴。

1 个答案:

答案 0 :(得分:3)

您可以使用Worksheet_Change()事件。例如,如果您要更改的单元格为A1,请测试Target单元格是否匹配。如果是,请确定目标工作表上的最后一行(Sheet2,下方),然后分配值。

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address = Range("A1").Address Then

        ' Get the last row on our destination sheet (using Sheet2, col A here)...
        Dim intLastRow As Long
        intLastRow = Sheet2.Cells(Sheet2.Rows.Count, "A").End(xlUp).Row

        ' Add our value to the next row...
        Sheet2.Cells(intLastRow + 1, "A") = Target.Value

    End If

End Sub