Greetings everyone,
Don't know if someone has had this issue, but I had a hard time figuring out this, so I decided to publish it.
I searched the forum and the web and din not find any solution, so I decided to post it here. It may help someone.
So, if you want to execute a Solidworks vba macro via Visual Basic .net here is the trick:
Imports SolidWorks.Interop.sldworks
'This is a button
Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click
'Just to know if solidworks is already opened:
Dim opened As Boolean
If Process.GetProcessesByName("SLDWORKS").GetLength(0) > 0 Then
opened = True
Else
opened = False
End If
'Now, this will open solidworks if it is not already opened:
Dim app As SldWorks = CreateObject("sldworks.application")
If app IsNot Nothing Then
app.Visible = True
End If
'And the way to execute the solidworks macro:
app.RunMacro("C:\Users\*******\Desktop\Macro1.swp", "Macro11", "Macro_name")
'The three string are:
'Macro filepath name
'Module name
'Procedure name
End Sub
Best regards.
SolidworksApi macros