Results 1 to 2 of 2

Importing Excel Macros Code from another Excel sheet which has Macro code.

Threaded View

arun.pillai Importing Excel Macros Code... 01-14-2010, 03:39 AM
PMO Re: Importing Excel Macros... 01-14-2010, 05:38 PM
  1. #1
    Registered User
    Join Date
    01-14-2010
    Location
    India
    MS-Off Ver
    Excel 2003
    Posts
    1

    Importing Excel Macros Code from another Excel sheet which has Macro code.

    How can I Export and import Excel Macro from an Excel Template in Centralized location? Whenever user opens the Template this code gets imported at runtime.

    All macro code in file1 kept in Shared drive.

    Whenever any user opens Template it gets all the code for macro from this Shared Drive --> template.



    For that I need to have some code within all the templates to get this code from shared drive.

    i) Importing macros

    ii) have all code in VBS format in the shared drive



    But for First solution it not working. I will show you what I have worked on and could you please tell me what is wrong.

    Please find the code which i have worked on however has issues with it when import line is execute. It doesn't perform any action though it executes that line.
    Private Sub Workbook_Open()
    'Call Sheet1.updatescreens
    Call OpenSourceExcel
    Call CopyMacroModule(Workbooks("Smoke_Test.xls"), "Test Script")
    'Call CopyMacroModule(Workbooks("Smoke_Test.xls"), "Result")
    'Call CopyMacroModule(Workbooks("Smoke_Test.xls"), "Datapool")
    'Call CopyMacroModule(Workbooks("Smoke_Test.xls"), "Object Repository")
    Call CloseSourceExcel
    End Sub
    
    Sub CopyMacroModule(SourceWB As Workbook, strModuleName As String)
    strFolder = SourceWB.Path
    arun = ThisWorkbook.Path
    arun1 = ThisWorkbook.Name
    Set Targetwb = ThisWorkbook
    MsgBox arun1
    temp = arun & "\" & arun1
    MsgBox temp
    If Len(strFolder) = 0 Then strFolder = CurDir
    strFolder = strFolder & "\"
    strTempFile = strFolder & "tmpexport.bas"
    MsgBox strFolder
    SourceWB.VBProject.VBComponents(1).Export (strTempFile)
    MsgBox ActiveWorkbook.Name
    Targetwb.VBProject.VBComponents.Import (strTempFile)
    ThisWorkbook.AcceptAllChanges
    ThisWorkbook.Save
    Kill strTempFile
    End Sub
    
    
    Private Sub OpenSourceExcel()
    strSourceSheet = "C:\Smoke_Test.xls"
    Set objExcelSource = CreateObject("Excel.Application")
    Set objSpreadSource = objExcelSource.Workbooks.Open(strSourceSheet)
    End Sub
    Private Sub CloseSourceExcel()
    objExcelSource.Workbooks.Close
    End Sub
    Last edited by Leith Ross; 01-14-2010 at 03:12 PM. Reason: Added Code Tags

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1