Runs a macro from a project file.
Visual Basic for Applications (VBA)
Create two VBA macros using the following code samples. Store RunMacroSub.swp at c:\test or, if elsewhere, replace c:\test with the location where you stored it. Then run RunMacro.swp.
'----------------------------
' RunMacro.swp
'---------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim boolstatus As Boolean
Sub main()
Set swApp = Application.SldWorks
Dim runMacroError As Long
boolstatus = swApp.RunMacro2("c:\test\RunMacroSub.swp", "RunMacroSub1", "main", swRunMacroUnloadAfterRun, runMacroError)
End Sub
'---------------------------
'---------------------------------------
' RunMacroSub.swp'
'---------------------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Sub alternate()
Set swApp = Application.SldWorks
swApp.SendMsgToUser "RunMacroSub1:alternate() called."
End Sub
Sub main()
Set swApp = Application.SldWorks
swApp.SendMsgToUser "RunMacroSub1:main() called."
End Sub
Visual Basic for Applications (VBA)
Create two VBA macros using the following code samples. Store RunMacroSub.swp at c:\test or, if elsewhere, replace c:\test with the location where you stored it. Then run RunMacro.swp.
'----------------------------
' RunMacro.swp
'---------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim boolstatus As Boolean
Sub main()
Set swApp = Application.SldWorks
Dim runMacroError As Long
boolstatus = swApp.RunMacro2("c:\test\RunMacroSub.swp", "RunMacroSub1", "main", swRunMacroUnloadAfterRun, runMacroError)
End Sub
'---------------------------
'---------------------------------------
' RunMacroSub.swp'
'---------------------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Sub alternate()
Set swApp = Application.SldWorks
swApp.SendMsgToUser "RunMacroSub1:alternate() called."
End Sub
Sub main()
Set swApp = Application.SldWorks
swApp.SendMsgToUser "RunMacroSub1:main() called."
End Sub
C#
boolstatus = Me.swApp.RunMacro2('C:\Test\CSharpMacro\SwMacro\bin\Release\CSharpMacro.dll',
'', 'Main', swRunMacroOption_e.swRunMacroDefault, runMacroError)