Witam wszystkich, w kontekście projektu, który jest trochę długi, utknąłem na prostym punkcie: muszę określić (w makrze) obszar szkicu (w formie Double), aby następnie skopiować go do pliku Exel (to dobrze). Odpowiednikiem bez makr jest:
- wybierz szkic (o nazwie "Krok 5")
- Własność powierzchni
- wyodrębnij obszar (lub obszar, w tym przypadku sprowadza się to do tego samego) i skojarz go ze zmienną typu Double
Próbowałem już tego fragmentu kodu, ale faza "wyodrębniania obszaru", jak możesz sobie wyobrazić, nie działa (reszta działa).
Dim swApp As Object
Przyciemnij część jako obiekt
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Sub copySurface()
Przyciemnij powierzchnięWybór jako podwójną
'*************************************
Włącza otwarty dokument w SolidWorks
'*************************************
Ustaw swApp = _
Aplikacja.SldWorks
Ustaw część = swApp.ActiveDoc
'*************************************
'Wyodrębnij obszar szkicu
'*************************************
Ustaw część = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("krok5", "TWARZ", 0, 0, 0, Fałsz, 0, Nic, 0)
Dim swMesure jako miara
Set swMesure = Part.Extension.CreateMeasure
monAire = swMesure.Area
'*************************************
'Wybiera aktualnie otwarty plik Exel
'*************************************
Ustaw swApp = CreateObject("SldWorks.Application")
Ustaw xlApp = GetObject(, "Excel.Application")
Ustaw część = swApp.ActiveDoc
Ustaw Xlsh = xlApp.Application.ActiveSheet
'*************************************
Implementowanie wartości w tabeli programu Excel
'*************************************
Xlsh.Cells(2, 2) = monAire
Koniec subwoofera
Proszę bardzo, jeśli ktoś ma pomysły, z góry dziękuję!