使用Apache POI在模板文件中复制宏?
我有两个工作簿。
Workbook1:从模板文件,宏
Workbook2构造:空
在循环中导出我的数据结构。在每一个循环中,我将模板复制到wokrbook2中,然后在其中写入数据,标记我下一个循环传递的行,然后再次执行相同的操作。
最后,我已经将模板复制到工作簿2并将数据写入相应的模板中多次(与数据集一样多次)。
我的问题:原始模板文件中有一个宏,当我打开新创建的文件时不见了。所有数据都被正确写入,只是缺少宏功能。
我不知道其他的解决方案,但有Apache的POI的一个限制是: Macros can not be created. However, reading and re-writing files containing macros will safely preserve the macros.
问题解决。 – dutchman79 2012-07-24 13:50:26
将它作为答案发布,无论你做了什么。这对其他人会有所帮助 – 2012-07-24 13:54:26
我把它作为评论发布到我上面的原始问题上。 – dutchman79 2012-07-25 07:17:28
问题解决了,也许unlogical但它的作品。
我首先将模板复制到新的工作簿中,然后迭代所有行并将其扔掉。结果是一张空白表,但宏仍然存在。
然后我从模板工作簿复制模板行和填充数据每次
你为什么不打开工作簿复印件1份,这些,与真实值替换模板值,并保存? – Gagravarr 2012-07-24 13:36:33
问题解决了,也许不合逻辑,但它的工作原理。 我首先将模板复制到新的工作簿中,然后遍历所有行并将其扔掉。结果是一张空白表,但宏仍然存在。 然后,我成功地从模板工作簿复制模板行,并每次填充这些数据。 (在循环中) – dutchman79 2012-07-24 13:54:20