当我将统计工作表分发给公司外部的用户时,我需要保护底层的保密公式,同时保持工作表易于用户输入数据。有什么想法吗?
答案 0 :(得分:1)
总是有一种近乎防弹的方法将值和格式粘贴到新工作表(可以很容易地自动化)。但是,您当然会冒着意外将原始/未受保护的工作簿发送给用户的风险。
答案 1 :(得分:0)
以编译语言实现秘密公式并从库中调用它将提供一些保护,但不是来自一个坚定且知识渊博的逆向工程师。
如果您拥有这些资源,您的公司可以设置一个用户在其输入中发送的Web服务,并且您的黑匣子会处理输入并发回输出。但这对用户来说可能是麻烦,特别是那些想要保密的用户。
答案 2 :(得分:0)
最简单的解决方案(但不是很安全)是保护细胞。不仅要选择'保护',还要选择'隐藏'。当工作表受到保护时,您无法看到正在使用的公式。
正如其他人所说,如果你真的希望这是安全的,我就不会使用excel。
答案 3 :(得分:0)
正如其他人所说,Excel不是安全执行此操作的最佳方式。
如果你打算用Excel做到这一点,这是一种方式:
如果您的公式是VBA,您可以转到VB编辑器并选择工具 - > VBAProject属性。在“保护”选项卡上,勾选“锁定项目”旁边的框以进行查看并输入密码。用户将能够看到在Excel中调用的公式,但无法查看/编辑VBA。
(菜单命令适用于Office 2003 - 不确定新版本。)
答案 4 :(得分:0)
SpreadsheetGear for .NET将允许您将Excel工作簿嵌入Windows窗体应用程序或在ASP.NET应用程序中使用它。
最终,如果确定的用户拥有工作簿,或具有工作簿的应用程序,甚至工作簿的逻辑转换为.NET或本机代码,如果他们投入足够的时间,他们将能够对您的逻辑进行逆向工程它
如果构建基于ASP.NET或其他服务器的应用程序,其中工作簿仅存在于服务器上,则可以更好地保护您的IP(假设您的服务器管理员遵循健全的安全措施)。
您可以将SpreadsheetGear用于其中任何一种方法。
您可以查看实时ASP.NET示例here,了解SpreadsheetGear Explorer WinForms示例here,并下载免费试用here。
免责声明:我拥有SpreadsheetGear LLC