![当源工作簿在不同的计算机上编辑时,如何自动且连续地更新主工作簿中的单元格值?](https://linux22.com/image/1525410/%E5%BD%93%E6%BA%90%E5%B7%A5%E4%BD%9C%E7%B0%BF%E5%9C%A8%E4%B8%8D%E5%90%8C%E7%9A%84%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%B8%8A%E7%BC%96%E8%BE%91%E6%97%B6%EF%BC%8C%E5%A6%82%E4%BD%95%E8%87%AA%E5%8A%A8%E4%B8%94%E8%BF%9E%E7%BB%AD%E5%9C%B0%E6%9B%B4%E6%96%B0%E4%B8%BB%E5%B7%A5%E4%BD%9C%E7%B0%BF%E4%B8%AD%E7%9A%84%E5%8D%95%E5%85%83%E6%A0%BC%E5%80%BC%EF%BC%9F.png)
我需要制作一个主文件,用于监督团队成员的日常行动。通过这样做,主文件使用大量countif
和countifs
函数来计算未解决的项目和其他内容。函数使用的数据来自同一工作簿中的其他选项卡,这些数据来自许多不同的 excel 文件。(见下文)
我的问题如下:每当团队成员更改源文件中的相关单元格时,主文件中的国家/地区编号选项卡单元格中的数据不会持续刷新。我可以通过功能区(数据/连接/编辑链接/更新值)手动刷新主文件中的单元格,方法是关闭并重新打开主文档,或者在后台打开源工作簿,但目标是使其全天保持最新状态而无需任何干预。
请注意,源文件中未填充的单元格已链接到主文件,以便能够看到源文件中的进一步更改。(例如:在 Country3.xlsm 中,B5:B7 中只能找到 3 个项目。B8、B9 等已链接到主文件中的相应单元格,因此如果插入第 4 个项目,则应该在主文件中看到它。)
我使用 Excel 2007,我的设置如下:
- Excel 选项/公式/工作簿计算:自动
- Excel 选项/高级/计算此工作簿时:更新到其他文档的链接
- Excel 选项/高级/计算此工作簿时:保存外部链接值
- Excel 选项/信任中心/信任中心设置/外部内容/数据连接的安全设置:启用所有数据连接(不推荐)
- Excel 选项/信任中心/信任中心设置/外部内容/工作簿链接的安全设置:为所有工作簿链接启用自动更新(不推荐)
- Excel 选项/信任中心/信任中心设置/消息栏/显示消息栏:当内容被阻止时,在所有应用程序中显示消息栏
请帮我解决这个问题!
答案1
您的问题的格式很好!
没有办法打开它,但有办法让它自动执行。如果您还没有启用开发人员功能区(如果您有完整的 Excel),请启用它,然后在该功能区中单击“Visual Basic”
您想坚持ActiveWorkbook.RefreshAll
某个地方。也许可以通过编辑“ThisWorkbook”并添加以下代码:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ActiveWorkbook.RefreshAll
End Sub
这样每次切换标签时都会发生这种情况吗?
或者也许通过编辑主表的 VBA 代码并ActiveWorkbook.RefreshAll
在其中添加某个内容,例如在工作表的 Worksheet_Activate 或 Worksheet_SelectionChange 事件中?
一旦你开始工作,你也可以尝试去https://stackoverflow.com/questions/211715/how-to-make-a-macro-which-executes-periodically-in-excel让它每 n 秒定期更新一次。