我有一个包含宏的主工作簿,该宏打开另一个包含需求预测的工作簿。通过宏打开的工作簿是从客户门户网站下载的,每天都是全新的,无需事先进行编辑。
宏然后遍历信息并创建新的可读和更直观的工作表。但是,在其中一些工作表中,我想添加一些事件驱动的代码,以便在鼠标悬停或选择单元格时提供工具提示。
是否有可能(不安装vanilla Excel 2010中的附加组件)将代码添加到宏中创建的工作表对象中?
处理后的工作簿的布局或多或少是静态的,所以我想知道是否应该创建模板文件然后将输入复制到其中。这将允许我在添加数据之前编码事件。这是最好的可能吗?
答案 0 :(得分:0)
正如Dan指出的那样,您可以使用Application.VBE.ActiveVBProject以编程方式将代码模块添加到工作簿中。但这样做需要更宽松的宏安全设置(默认情况下设置为不受信任),这是不推荐。
当我必须做类似的事情时,我会使用三本工作簿:
使用工作簿#3打开工作簿#1并将其数据复制到工作簿#2中。保存工作簿#2的副本并关闭它。必要时重复此过程。
这不是最漂亮的解决方案,但它可以使您的代码保持模块化。