Class VBAMacroExtractor


  • public class VBAMacroExtractor
    extends java.lang.Object
    This tool extracts out the source of all VBA Modules of an office file, both OOXML (eg XLSM) and OLE2/POIFS (eg DOC), to STDOUT or a directory.
    Since:
    3.15-beta2
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void extract​(java.io.File input, java.io.File outputDir)
      Extracts the VBA modules from a macro-enabled office file and writes them to .vba files in outputDir.
      void extract​(java.io.File input, java.io.File outputDir, java.lang.String extension)
      Extracts the VBA modules from a macro-enabled office file and writes them to files in outputDir.
      static void main​(java.lang.String[] args)  
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • VBAMacroExtractor

        public VBAMacroExtractor()
    • Method Detail

      • main

        public static void main​(java.lang.String[] args)
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • extract

        public void extract​(java.io.File input,
                            java.io.File outputDir,
                            java.lang.String extension)
                     throws java.io.IOException
        Extracts the VBA modules from a macro-enabled office file and writes them to files in outputDir. Creates the outputDir, directory, including any necessary but nonexistent parent directories, if outputDir does not exist. If outputDir is null, writes the contents to standard out instead.
        Parameters:
        input - the macro-enabled office file.
        outputDir - the directory to write the extracted VBA modules to.
        extension - file extension of the extracted VBA modules
        Throws:
        java.io.IOException
        Since:
        3.15-beta2
      • extract

        public void extract​(java.io.File input,
                            java.io.File outputDir)
                     throws java.io.IOException
        Extracts the VBA modules from a macro-enabled office file and writes them to .vba files in outputDir. Creates the outputDir, directory, including any necessary but nonexistent parent directories, if outputDir does not exist. If outputDir is null, writes the contents to standard out instead.
        Parameters:
        input - the macro-enabled office file.
        outputDir - the directory to write the extracted VBA modules to.
        Throws:
        java.io.IOException
        Since:
        3.15-beta2