Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.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 如果单元格值更改,请将值复制到另一个工作表_Vba_Excel - Fatal编程技术网

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

Vba 如果单元格值更改,请将值复制到另一个工作表,vba,excel,Vba,Excel,我创建了一个项目管理模板,定期更新项目状态 我希望一个单元格的单元格值一旦更改,准确的值将复制到另一个工作表上的单元格 如果原始单元格的单元格值再次更改(由于进一步的项目更新),我希望再次复制该值,但低于上一个副本,依此类推 由于我想自己解决这个问题,如果您能给我一些关于如何继续或在哪里查找的提示,我将非常高兴。您可以使用工作表\u Change()事件。例如,如果要更改的单元格是A1,请测试目标单元格是否匹配。如果是,请确定目标工作表上最后使用的行(Sheet2,如下),然后分配值 Priva

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

我希望一个单元格的单元格值一旦更改,准确的值将复制到另一个工作表上的单元格

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


由于我想自己解决这个问题,如果您能给我一些关于如何继续或在哪里查找的提示,我将非常高兴。

您可以使用
工作表\u Change()
事件。例如,如果要更改的单元格是
A1
,请测试
目标单元格是否匹配。如果是,请确定目标工作表上最后使用的行(
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

谢谢,我尝试了上面的代码,但行intLastRow=Sheet2.Cells(Sheet2.Rows.Count,“a”).End(xlUp)。行是否有Sheet2?对不起,我的错误。。我只需将声明“sheet2”更改为使用excel版本的德语声明,即“Tabelle2”。。它现在运行得很好。。谢谢你的润肤露,有什么附加的吗?