【问题标题】:Keeping a log/table of changes based on changes made in one sheet in Excel根据在 Excel 中的一张表中所做的更改保留更改日志/表
【发布时间】:2017-10-02 19:52:39
【问题描述】:

所以我的目标是在 Excel 中有一张表格,用户将在其中输入当前月份和年份,然后输入某些信息,我们称之为“X”、“Y”和“Z”。
在另一张纸上,我希望此信息更新一个包含 12 行(每个月一个)和 3 列的表,每个变量 X、Y 和 Z 一个。我只希望更新用户输入的当前月份的数据.

然后会发生的情况是文件被保存,然后在下个月再次打开该文件,并为 X、Y 和 Z 输入新的数字,以及新的当前月份和年份,但是问题是: 以前的号码如何永久保存?

我想这里需要 VBA,因为我尝试使用常规 Excel 函数的尝试并不是很成功。任何帮助将不胜感激!

编辑:附图是我希望工作表的工作方式,这可能吗?
如果可能的话,我也想尝试使其成为一种用户错误证明,例如:通过跟踪更改,有没有办法只保留每个日期所做的最新更改?

【问题讨论】:

  • 用户每个月输入多少行?在其他 12 行的工作表中发生了什么样的更新?是给定月份的最新值集、给定月份所有值的总和等?
  • 如果使用 2016,您是否尝试过使用数据表单 dummies.com/software/microsoft-office/excel/… 这可以与具有 NOW 函数的字段结合使用数据条目的 DATETIME 填充它。用户将数据输入到表单中,而不是直接输入到工作表中。类似的功能可以通过用户表单来实现。有很多很容易找到的链接和视频,介绍如何创建这些。
  • 使用另一个将用作电子期刊的工作表。 .... 从顶部开始,每次用户输入数据时,X、Y、Z、用户名、日期等的值都会输入到该日记帐表的下一个空白行中
  • i.imgur.com/nmUgzfN.jpg这张图指的是我希望床单如何工作的大致思路(上面是第1个月,下面是第2个月)

标签: vba excel


【解决方案1】:

如果您不熟悉 VBA,使用 Track Changes 会更简单。

首先,将工作簿保存为共享工作簿:

  1. 转到查看选项卡
  2. 单击共享工作簿
  3. 勾选复选框以允许多个用户同时进行更改
  4. 如果出现提示,请单击确定并保存工作簿

现在每次保存工作簿时都会自动记录所有更改。随时查看所有更改:

  1. 保存工作簿
  2. 转到评论选项卡
  3. 单击跟踪更改,然后突出显示更改
  4. 取消选中“时间”以显示“全部”
  5. 取消选中“谁”以显示“所有人”
  6. 取消选中“突出显示更改”
  7. 勾选“在新工作表上列出更改”
  8. 点击确定

将添加一个名为 History 的新工作表,其中显示每次保存工作簿时所做的所有更改。

要仅查看自上次保存以来的更改,请将“时间”框更改为“自上次保存以来”。

【讨论】:

  • i.imgur.com/nmUgzfN.jpg 所以这就是我希望工作表的工作方式......随着跟踪更改,如果用户进行更改然后重新编辑更改,是否会强制多个输出?跨度>
  • 如果您不熟悉 VBA,则需要聘请一名程序员。 StackOverflow 不是“做你的项目”服务。当您遇到困难或有特定问题时,它会为您提供帮助,但不会为您创建整个程序。
  • 我已经更新了答案,以解决您关于曲目更改的其他问题。
  • 谢谢@Michael 我正在努力寻找一种方法让 Track Changes 以用户友好的方式工作。如果我选择不使用 VBA,我认为“自从我上次保存”框将是这里的最佳选择。诚然,我确实知道 VBA,并且可能会尝试用它来解决这个问题,但我主要想知道是否有一个基本功能,或者链是否可以更简单地解决它。无论哪种方式,如果 VBA 投资太难,可能就不值得,因为文档的未来状态将是直接链接来自 SQL 服务器的数据,无需用户输入或历史记录。
猜你喜欢
  • 1970-01-01
  • 2019-07-15
  • 2021-03-14
  • 2019-11-20
  • 2013-06-23
  • 2021-07-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-25
相关资源
最近更新 更多