我需要做一份包含多个工作表的exel文件,在vba代码里设置了每个工作表对应一个密码用来解开对应的xlSheetVeryHidden的隐藏功能,目的是使每一个密码都对应一个表有相应的操作权限,最后设置了工程密码保护。 但问题来了, 如果我使用其中一个密码编辑文件后,另存为的时候使普通格式(xlsx)保存,使得宏失效,那么,当我打开这份丢失宏功能的文件的时候,可以进入vba代码编辑窗口,虽然没法看到原始文件VBA代码,但可以更改每一个工作表的visible属性为xlSheetVisible并使其可见,这样就暴露的其它工作表的内容了。 还有一个问题是,为什么打开带VBA代码的文件时,每次编辑完后,点击直接保存(不是另存为),同样弹出提示保存窗口提示选择保存位置? 有方法可以在原来的文件上直接保存吗?
没办法。几个思路
1、在工程里面写代码不可能安全,除非封装了,在工程里调用。
2、只允许保存为固定格式
3、不能直接保存应该是文档问题
1、在工程里面写代码不可能安全,除非封装了,在工程里调用。
2、只允许保存为固定格式
3、不能直接保存应该是文档问题
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-10-13
1,试试隐藏菜单栏及屏蔽另存快捷键的方法
2,从Excel2007开始,有宏代码的文档需要存为xlsm后缀才可直接保存
2,从Excel2007开始,有宏代码的文档需要存为xlsm后缀才可直接保存