我正在开展一个项目,出于工作表安全原因,该项目要求所有用户都使用桌面应用程序。只需在团队或浏览器中打开工作表,不运行 VBA,即可绕过工作表安全性。
尽管我有一些迂回的安全措施,但工作表访问的问题在于,工作表未受保护的单元格将被那些不应该访问的人访问。
在理想的情况下,我希望使得该工作表无法在浏览器或团队中打开,但如果需要的话,我可能会在稍后发布有关安全选项的帖子,以防我找不到方法来实现这一点。
答案1
阻止人们使用团队、网络版或其他类似 Excel 的程序打开您的工作表是不可能的。
鉴于您需要运行宏,因此您实际上可以利用这一点。
您需要设置一些东西。
在工作簿中创建一个新工作表,并在其中放置一条消息,说明需要使用桌面应用程序打开该工作表,并在工作表上放置一个宏按钮以获取访问权限。人们打开工作表后,他们单击它来运行您的宏,这将授予他们访问权限。
隐藏所有其他工作表,并使用简单的代码保护工作簿。
创建一个宏来解锁工作簿、显示所有其他工作表、隐藏欢迎工作表并再次保护工作簿。
将新的宏放置在某处,使工作表重新处于受保护状态并管理您必须执行的任何保存。
这样做的结果是,如果有人在 Excel 的 Web 版本中打开工作表,他们就会被锁定,除非他们知道解锁代码。
不过,您必须小心人们在不受保护的状态下保存文件,但可能可以检查上次保存的时间,如果发生这种情况,请保护工作表并再次保存。
答案2
我发现,如果您转到“文件”>“信息”>“浏览器视图选项”,则可以选择要在浏览器(和团队)视图中显示哪些工作表。因此,通过设置一个虚拟工作表并告知用户在桌面应用中重新打开,问题就解决了。