如何保留一个excel工作簿或工作表中的数据更改历史记录到另一工作簿或工作表的历史记录

用户名

下午好,

我正在一张有数据表的Excel工作表上工作。此数据代表我部门希望跟踪的几个指标。每当有人要用新数据填充表时,单元格中的先前数据都会丢失。

有人如何创建一个单独的工作表,您可以在其中自动存储该表的所有值?我的意思是,当在一个表单元格中进行更改时,新值将自动存储在另一个表中,该表将保留该单元格的所有值(旧值和新值)吗?我尝试了“跟踪更改”,但不确定是否很喜欢这种方式。

有谁知道一种更有效的方式来做到这一点?例如通过宏?

谢谢!

工程师吐司

(我正在使用移动设备,因此目前无法提供非常充实的答案。)

我已经为此编写了代码。我的目的是跟踪由多个用户编辑的关键工作表上的所有更改。如果对数据的来源存在争议,我可以查看日志。这里有一些VBA片段会派上用场。

Worksheet_Change 每次更改工作表时都会触发事件。

If Not Intersect(Target, Range("A1:G12")) Is Nothing 会告诉您已更改的单元格是否在您关心的范围内。

将要登录的值存储到数组中会更快,并且它们将日志表上的某个范围设置为等于该数组,而不是分别设置日志表中的每个单元格。

a一下,看看你能走多远。明天我会更冗长一些。


第二天编辑

这是一些代码,它将在其中包含代码的A1:G12任何工作表上监视范围如果r是已更改的行,则代码会将所有内容从中复制Ar:Gr代码名称为的工作表shtLog(代码名称是VBA中显示的名称,而不是您在Excel中看到的选项卡上的名称。)这应该使您朝正确的方向前进。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim r As Integer
    Dim c As Integer
    Dim arr(1 To 1, 1 To 12)
    If Not Intersect(Target, Range("A1:G12")) Is Nothing Then
        r = Target.Row
        For c = 1 To 12
            arr(1, c) = Cells(r, c).Value
        Next
        With shtLog
            .Range(.Cells(.UsedRange.Rows.Count + 1, 1), .Cells(.UsedRange.Rows.Count + 1, 12)) = arr
        End With
    End If
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据另一个表中的信息建立对行的更改的历史记录跟踪

如何将数据从一个 excel 界面(表 1)存储和更新到另一表(表 2)以跟踪交易历史记录?

bash:每个命令的历史记录。它是如何工作的?

GROUP BY从历史记录表中检索最后一个事件

从历史记录中删除一个提交

显示历史记录表中的更改历史记录

Smooch-如何更新(更改)历史记录中的一个对话

MySql工作台查询历史记录(最后执行的查询),即创建/更改表,选择,插入更新查询

如何使用RTC Java API获取工作项的历史记录数据

如何将一个git历史记录附加到另一个历史记录?

检测历史记录表中特定列的更改

保留每个工作目录的历史记录(参见每个shell会话)

Excel 2010-根据工作簿中另一个工作表的数据自动填充工作表

如何恢复被另一个文件替换的文件的 SVN 历史记录?

SQL查询链接表,从一个表中返回最早的历史记录以及相关的结果

Git从另一个没有历史记录的仓库中拉取

将多个工作簿中的数据复制并粘贴到另一个工作簿中的工作表中

如何维护提取到另一个文件的文件内容的Git更改历史记录?

从另一个工作簿中的另一个工作表上对工作簿中的excel工作表执行筛选宏

Vimperator:如何在当前选项卡中列出历史记录,然后选择其中一个历史记录返回?

如何在Oracle历史记录表中维护历史数据

将数据从工作簿(在文本框内)放到另一个工作簿(在工作表中)

如何仅下载AOSP源代码的工作目录,而没有整个回购历史记录?

离子历史记录如何工作以及何时创建非根堆栈?

如何将工作移至新分支并删除所有提交历史记录?

如何使用 Power BI 跟踪工作项历史记录?

如何保留备份历史记录?

在bash脚本中运行时,“历史记录”停止工作

Hadoop 2.7.1中的作业历史记录服务器无法正常工作