Importing/exporting Excel VB modules

Mark Carter cartermark46 at
Thu Jun 19 17:06:22 CEST 2003

cartermark46 at (Mark Carter) wrote in message news:<d3c9c04.0306190106.79af7c3e at>...
> I have the excellent win32com python module. What I'm trying to do is
> import and export VBA modules into Excel programmatically.
> Does anyone know how to enumerate the modules?
> From within the VBA editor I tried:
>   x = ThisWorkbook.Modules.Count
> but it came up with the number 0 (which isn't correct).

Actually, I think I've sorted this out. Something like this will do (in VBA):

Public Sub ExportModules()
    Dim wb As Workbook
    Set wb = ThisWorkbook
    Dim VBComp 'As codemodule
    Dim D As String
    Dim N
    D = ThisWorkbook.Path
    For Each VBComp In wb.VBProject.VBComponents
        If (VBComp.Type = 1) Then 'standard module
            N = D + "\" + VBComp.Name + ".bas"
            VBComp.Export N
        End If
    'Set VBComp = wb.VBProject.VBComponents("modModules")
    'VBComp.Export pt + "\modModules.bas"
End Sub

It's not actually in python - but I think that a port is easy enough.

More information about the Python-list mailing list