Is een formulier in een macro-VSTA mogelijk?

Hallo

Om te kijken of ik me kan bevrijden van de beperkingen van de VBA, probeer ik een macro te schrijven in VSTA (vbscript). Vanaf het begin lijkt het erop dat het van het type Class Library is, en niet van Windows-formulieren.

Mijn probleem is dat ik een interface naar mijn macro wil, behalve dat wanneer ik het formulier van de Sub main() van de code SolidworksMacro.vb het sluit, het sluit zodra het is geladen en de uitvoering ervan voortzet tot het einde van de code, dus stopt de macro ...

Maar ik wil hetzelfde gedrag als bij een VBA-macro; Laat hem de vorm tonen en de bewaker open.

Enig idee? Een oplossing?

Bedankt.

Ah... Met ShowDialog() in plaats van Show() lijkt het te werken.

1 like

Om precies te zijn (omdat ik de info niet op het net kon vinden, moest ik zelf experimenteren om erachter te komen hoe ik het moest doen) zijn hier de 2 regels code om een gebruikersformulier te openen van de startklasse (SolidWorksMacro.vb) gemaakt door SW:

Public Sub main()

	Dim f As Object = New myForm
	f.ShowDialog

End Sub

Waarbij myForm moet worden vervangen door de naam van het gebruikersformulier dat u wilt weergeven.

Naast gecondenseerd werkt dit ook:

Public Sub main()

	Dim f As Object = New myForm().ShowDialog

End Sub