Excel-VBA代码的版本控制系统

时间:2016-12-20 11:00:38

标签: git vba svn version-control

我正在寻找一个版本控制系统,我可以将其用于VBA代码,可能采用加载项的形式,但类似于 SVN Git 甚至是商业软件。我知道有一个讨论herethere但是,他们的年龄超过了6年,这并不是我想要的。我知道可以使用 Tortoise SVN 仅用于代码,但不能用于整个项目(代码+表的所有模块),我知道它可以手动完成。

2 个答案:

答案 0 :(得分:9)

  

注意:此功能已被删除。 Rubberduck仍然允许将所有代码文件从VBA项目导出到文件系统,但是从2019/02/08开始,它允许导入所有代码文件同时,它不会覆盖导入时的现有模块,这使得这个答案几乎无效。

免责声明:我是Rubberduck VBA项目的撰稿人。

VBE的Rubberduck VBA插件增加了许多功能,包括所有VBA主机的源代码控制。它是积极开发的,开源的和免费的,可以在Excel 2000以及32位和64位版本的Office中使用所有版本的Excel(以及Access,Word和PowerPoint等)

Rubberduck使用LibGit2Sharp库,因此您可以直接与GitHub和其他基于云的服务集成,或者您只需将模块和表单导出到文件夹。

您可以在这里找到GitHub上的项目:https://github.com/rubberduck-vba/Rubberduck

答案 1 :(得分:2)

我认为没有任何针对Excel VBA的引人注目的源代码控制系统,您只需选择一个已有的名称并将其调整为Excel VBA即可。

所以,我最近使用(并且仍会选择)GIT,但我必须将模块导出到目录。我工作的其他企业级Excel系统具有类似的导出模块,并单独对其进行版本化。

对于床单,他们通常被收纳为二进制文件;只有一次,我在一个系统上工作,该系统存储了自己进行源代码控制版本比较的工作表逻辑,它是一个自定义的Xml格式。

有趣的是,xlsm和xslx的最新Excel文件格式格式实际上是片段逻辑雾化的zip目录。我已经研究过这种文件格式,它不适合作为源代码控制的版本。我认为微软在这里错过了一个技巧。