丰富的选项、命令行模式、与 GIT、Perforce 和 SVN 的集成VBA 代码的三向对比,使 xlCompare 成为 Excel 开发者终极的 VBA 差异 与合并工具。

查找 Excel 文件中 VBA 工程的更改

VBA 差异工具 xlCompare 如何对比 Excel 文件中的 VBA 代码
VBA 差异工具(xlCompare©)实战

对比 Excel 文件中的 VBA 代码

xlCompare 对比 Excel 文件中的 VBA 工程差异,您将获得已对比 VBA 代码模块的完整报告。

对比 Excel 文件中的 VBA 窗体

xlCompare 对比 Excel 文件 VBA 工程中的窗体与控件。如果 VBA 窗体上有任何改动,您都会被指向该处修改。

合并 VBA 代码中的更改

如何合并 VBA 工程中的更改?使用 xlCompare 时,您完全不必为此烦恼——无需导出代码再导入回去,所有合并操作都在 xlCompare 中完成,几下点击即可搞定。

如何对比 Excel 文件中的 VBA 代码差异

下面是对比两个 Excel 文件 VBA 代码差异的分步说明:

  1. 从 Windows 资源管理器将您的 Excel 文件拖入 xlCompare 窗口。
  2. 第二个文件拖入后,xlCompare 会立即显示对比向导窗口——您可在此选择对比的工作表、VBA 模块与 VBA 窗体配对。若工作簿结构相似,直接点击「对比」按钮即可;否则,选择 VBA 选项卡并确认 VBA 模块已正确关联。
    VBA 差异工具|对比向导
    点击「对比」按钮完成此向导。
  3. 已对比 VBA 模块的结果会显示在屏幕上。
    对比 VBA 代码

这就是您需要做的全部。只需几下简单点击即可在屏幕上获得结果。与前面描述的导出 VBA 代码方式相比,xlCompare 显得高效得多,对吧?

在 Excel 中合并 VBA 代码

对比 VBA 代码只是 VBA 差异流程的一部分。通常,发现差异后您还需要查看并合并 VBA 代码中的更改。如果手动完成,需要导出再导入 Excel 文件中的所有模块——若工作簿很大,可能要耗费您半个工作日。xlCompare 提供了多种合并 VBA 代码的方式。

合并 VBA 代码中的特定行

  1. 在 VBA 编辑器中选择您需要合并的行。
  2. 勾选该行前面的复选框。

您会看到该行出现在对应的模块中。这就完成了。如果此刻保存 Excel 文件,新的 VBA 代码即被保存。

合并整个 VBA 代码模块的所有行

  1. 点击包含待复制代码的主模块,按 Ctrl+A,该快捷键会选中编辑器中的所有行。
  2. 点击此面板中的任意复选框。
  3. 所有代码即被复制到另一个 VBA 工程中。

保存 Excel 文件以完成操作。看起来非常简单轻松,对吧?

对比 Excel 工作簿中的 VBA 窗体

对比 VBA 工程中的窗体只有两种方法:

  1. 使用 xlCompare
  2. 手动对比 VBA 窗体

第二种方法纯属浪费时间——非常耗时且出错风险高,因此我们不推荐。

xlCompare 对比 VBA 窗体与对比 VBA 代码一样简单

xlCompare 自带 Visual Basic 查看器,可显示 Visual Basic 工程的内容,包括所有窗体与控件。在下图中,您能看到以层级树形式呈现的窗体结构,可以原生方式浏览所有控件。

对比 VBA 代码——浏览窗体
在 xlCompare 中浏览 VBA 工程内容

看下图,xlCompare 高亮显示了在某个窗体版本中新增的控件。

对比 VBA 代码——新增的控件

Excel 文件的三向对比与合并工具

xlCompare 可对比两个拥有共同基准版本的 Excel 文件,这称为三向对比。如果您是 VBA 开发者,这是一项必备功能:xlCompare 显示两个不同版本中所做的更改,并允许解决合并冲突。在现代开发中,Visual Basic 程序常有数千行代码,xlCompare 能节省大量时间,成为终极的 VBA 差异工具。下图展示了 xlCompare 的 3 文件模式——我们对比了 3 个 Excel 文件,并呈现这份彩色编码报告。

xlCompare 检测到的修改

  1. 变化的代码行
  2. 冲突:在两个并行版本的 Excel 文件中都被修改的行
  3. 新增的 VBA 代码行
  4. 新增的函数
Excel 文件中 VBA 工程的三向对比

下载 xlCompare 桌面版,体验专业的 VBA 对比与合并。

下载试用