相关疑难解决方法(0)

为MS Excel执行版本控制的最佳方法

您在MS Excel(2003/2007)中使用了哪些版本的控制系统?你会推荐什么?为什么?您的顶级版本控制系统有哪些限制?

为了正确看待这一点,这里有几个用例:

  1. VBA模块的版本控制
  2. 不止一个人正在处理Excel电子表格,他们可能正在对他们想要合并和集成的同一工作表进行更改.此工作表可能包含公式,数据,图表等
  3. 用户不是太技术化,使用的版本控制系统越少越好
  4. 空间约束是一个考虑因素.理想情况下,只保存增量更改而不是整个Excel电子表格.

version-control excel

166
推荐指数
8
解决办法
14万
查看次数

Excel VBA代码模块的源代码控制

我希望能够控制我的Excel电子表格的VBA模块(目前使用的是Excel 2003 SP3),以便我可以共享和管理一堆不同电子表格使用的代码 - 因此我想重新加载它们从电子表格打开时的文件.

我有一个名为Loader.bas的模块,我用它来完成大部分驴工作(加载和卸载所需的任何其他模块) - 我希望能够尽快从文件中加载它当电子表格打开时.

我已将以下代码附加到Workbook_Open事件(在ThisWorkbook类中).

Private Sub Workbook_Open()
    Call RemoveLoader
    Call LoadLoader
End Sub
Run Code Online (Sandbox Code Playgroud)

RemoveLoader(也在ThisWorkbook类中)包含以下代码:

Private Sub RemoveLoader()
    Dim y As Integer
    Dim OldModules, NumModules As Integer
    Dim CompName As String

    With ThisWorkbook.VBProject
        NumModules = ThisWorkbook.VBProject.VBComponents.Count
        y = 1
        While y <= NumModules
            If .VBComponents.Item(y).Type = 1 Then
                CompName = .VBComponents.Item(y).Name
                If VBA.Strings.InStr(CompName, "Loader") > 0 Then
                    OldModules = ThisWorkbook.VBProject.VBComponents.Count
                    .VBComponents.Remove .VBComponents(CompName)
                    NumModules = ThisWorkbook.VBProject.VBComponents.Count
                    If OldModules - NumModules = 1 Then
                        y = 1
                    Else …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

22
推荐指数
2
解决办法
2万
查看次数

标签 统计

excel ×2

excel-vba ×1

vba ×1

version-control ×1