不太确定这是否完全可行,但我知道它很可能是分开的。我的网络上有一个共享的启用宏的文档,希望能够看到已更新的内容。 首先,需要指出的几件事;
有问题的工作表(组合工作表(有一个宏,它从其他 10 个工作表(从连接放置(中选取数据/范围并显示在组合工作表中。这是因为其他用户/团队更新了其他 10 个工作表。当然,这个组合表只显示所有数据。
我们现在要添加的是一些东西,可以让知道最新的条目是什么。我看到一些代码会在已更新的字段的下一列上放置时间戳,这对我们不起作用。
有人提到将该数据从合并工作表(实时(拉到新工作簿中。 在此工作簿中将另一个工作表作为上次更新的工作表,然后是另一个进行比较并突出显示差异的工作表。
我知道这是一个不寻常的请求,并且不知道采取什么方法(试图提高效率(来执行这个请求。
欢迎任何建议/提示。
这是已经存在的代码片段;
`Sub sbCopyRangeToAnotherSheet()
Sheets("Business Development").Range("A2:T50").Copy
Sheets("Combined").Activate
Range("A4:T50").Select
ActiveSheet.Paste
Sheets("Compliance").Range("A2:T50").Copy
Sheets("Combined").Activate
Range("A52:T101").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub`
这就是我要做的:
1-在VBA模块中添加"哈希"函数,请参阅创建哈希值 .
2-在数据的下一列(假设E列(中添加此函数:=base64sha1(CONCATENATE(A10;B10;C10;D10))
。
这将根据 A、B、C、D 列中的数据为您提供哈希代码:每次值更改时,哈希代码都会更改。
3-在更新宏中,在进行更新之前,请复制F列中的E列。
4-最后一件事是设置一个条件格式,以检查E列中的值是否是F列中的不同形式值。
注意:如果您将 E 列的标题设置为Now()
,并且在步骤3-
中,您在 F 列之前插入一个新列(而不是覆盖以前的哈希代码(,您将拥有所有信息来知道哪一行被更改以及何时更改。
希望这有帮助!