Solidworks では、2 つのマクロを記録します。
マクロ 1 は空です:
Dim swApp As Object
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
'added code
Dim distance_of_second_plane
'end of added code
Sub main()
Set swApp = _
Application.SldWorks
Set Part = swApp.ActiveDoc
'added code: here I want to call the second macro and send it distance_of_second_plane, and have it use that value
distance_of_second_plane = .05
'.. now what?
'end of added code, don't know what to add.
End Sub
マクロ 2 は、マクロ 1 からのデータを必要とする処理を行います。
Dim swApp As Object
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Sub main()
Set swApp = _
Application.SldWorks
Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("Front Plane", "PLANE", 0, 0, 0, True, 0, Nothing, 0)
Dim myRefPlane As Object
Set myRefPlane = Part.FeatureManager.InsertRefPlane(8, 0.05334, 0, 0, 0, 0)
Part.ClearSelection2 True
End Sub
もちろん、これらのマクロは別のファイルに保存されます。最初から 2 番目を呼び出し、最初からデータを渡し、それを 2 番目で使用するにはどうすればよいですか?
私が試したこと: http://support.microsoft.com/kb/140033、 http://www.cadsharp.com/macros/run-macro-from-another-macro-vba/、他の実行する VBA モジュールmodules、VBA の別のモジュールからサブルーチンを呼び出す
それらのすべてが問題です。求められた場合は、取得したエラーの詳細を提供します。