我在 SharePoint 中有一个大型 Excel 表,来自多个物理位置的人员可以对其进行编辑,他们可以对特定单元格进行编辑。但是,我们经常需要知道在给定日期或之后更改了哪些字符串的值(因为它们可能需要跟进)。当我们使用非 SharePoint Excel 时,这个问题很容易解决,只需使用一个按钮即可更改“状态”列中的值以表示某些工作已完成,同时在日志列中附加一个单元格,其中包含编辑日期和用户的姓名首字母。
但是……那是 VBA 流行的美好旧时光。有人知道在 Sharepoint 中执行此类操作的方法吗?
我知道理论上可以检查版本历史并将过去的版本与当前版本进行比较,但我想知道是否有人知道一种对于常见操作来说实用的方法。
谢谢!
答案1
VBA 仍然存在。文件存储在 SharePoint 库中并不意味着您不能使用 VBA。
顺便说一句,没有“sharepoint excel”这样的东西。Office 365 包含 Excel online,它在浏览器中运行,存储在 SharePoint 中的 Excel 文件可以使用 Excel online 打开。但是 Excel online 不运行 VBA。
但 Excel Online 并不是处理存储在 SharePoint 中的文件的唯一选择。使用 Office 365 和存储在 SharePoint 中的 Excel 文件,您仍然可以使用桌面版 Excel 打开这些 Excel 文件,然后就可以正常运行 VBA。
此外,借助 Office 365 和存储在 SharePoint 中的文件,共同创作功能允许多个人从不同的设备和端点同时编辑 Excel 工作簿。任何在桌面客户端上打开 Excel 工作簿的用户都能够运行工作簿中的 VBA 命令。
答案2
正如另一个答案中提到的,如果文件在桌面版 Excel 中打开,VBA 仍然有效,但我同意这不是最佳解决方案(附加步骤,.xlsm 文件无法自动保存...)
我不会使用 Excel,而是使用 SharePoint 列表进行数据输入,您可以在那里启用版本控制并创建一个Excel文件来分析信息。