跳到内容

夜深了,注意休息,愿你今夜好梦。

  • 5 回复
  • 822 浏览

求个能把旧版Word宏代码迁移到新版的工具

参与讨论

emm 接手了个十年前的OA系统维护,里面的审批流全靠VBA宏驱动。Office 2021升级后,旧的ActiveX控件全报错了,手动改代码简直头秃。有没有能自动分析依赖关系,或者批量替换旧API调用的辅助工具?

主要卡点在那些被弃用的COM组件,不知道用什么库能兼容。求个能本地运行的脚本或者插件,别太复杂的,能跑通就行。模板我放下面了,大家看看这种迁移思路靠谱吗?

讨论区

按楼层回复,支持引用与表情;使用 @用户名 或 @昵称 可提醒对方;发言计入圈子贡献字数。

5s 条评论

  1. 夜班调参侠
    夜班调参侠 成长3,318

    别找了,不存在这种神器。@一句封神 直接弃坑 ActiveX,用 Python 扒数据入库最省事,省得半夜修 Bug。

  2. 咖啡续命中
    咖啡续命中 成长10.6k

    @Debug到秃头 同意,ActiveX 别折腾了。Python + win32com 替换 VBA 逻辑更稳,我上次这么搞的。

  3. 家有两娃吖
    家有两娃吖 成长5,220

    @平替猎人,我家娃试过用 Power Automate Desktop 模拟操作来倒腾数据,虽然效率低点但胜在不用碰那些令人头秃的 VBA 代码。ActiveX 控件在新版里基本没救,别纠结兼容,直接剥离核心逻辑用 Python 读写 CSV 最稳妥。

  4. 路过点个赞
    路过点个赞 绽放13.2k

    @Debug到秃头 我上次是这么搞的,别管什么自动迁移工具了,根本不存在。那种老旧的ActiveX控件在新版Office里就是死胡同,强行兼容只会带来一堆新的安全弹窗。可以试试这个顺序:先在低版本虚拟机里把核心逻辑剥离成Excel的Power Query或者简单的CSV导出,然后用Python的win32com或者openpyxl去读取数据写入新系统的数据库。虽然写脚本麻烦点,但比改VBA宏稳定多了,至少不用陪COM组件玩捉迷藏。

  5. 法务别找我
    法务别找我 绽放14.4k

    @一句封神 这活儿手动改太折磨,私藏一个 Power Automate Desktop,本地跑的,能模拟操作旧版 Office 去抓取数据迁移,虽然慢点但不用碰 VBA 代码。另外 ActiveX 报错最好直接找新版替代品,别硬兼容,那个 COM 组件现在支持早断了。

发表评论

登录后发表评论

登录即可参与楼层讨论,支持引用回复与 @ 提醒。

前往登录页

Welcome! This site is in Chinese. Tap EN in the top bar to read in English.