Odzyskiwanie wartości makr czujnika z różnych konfiguracji

Witam

Próbuję stworzyć makro, które pobiera wartość czujnika i określoną właściwość (zwaną formatowaniem) każdej konfiguracji i otwiera formularz użytkownika zawierający tablicę 2-kolumnową.

Formatowanie |   Czujnik

 

Czy możesz mi pomóc?

Dziękuję

Witam

W przypadku czujników zapoznaj się z tym przykładem, który umożliwia pobranie wartości czujnika.

https://help.solidworks.com/2020/English/api/sldworksapi/Get_and_Set_Sensor_Example_VB.htm?verRedirect=1

Aby wyświetlić listę konfiguracji, 2 przykłady:

http://help.solidworks.com/2020/English/api/sldworksapi/Get_List_Of_Configurations_Example_VB.htm?verRedirect=1

http://help.solidworks.com/2017/English/api/sldworksapi/Change_Configuration_Properties_Example_VB.htm

W takim razie mam wątpliwości, że dziś wieczorem może być bardziej wykonalne w formie użytkownika lub w najgorszym przypadku eksport do Excela.

Witam

Dziękuję, patrzę na to i tak, rzeczywiście szukam możliwości otwarcia go w formularzu użytkowym, a nie w polu msg

Jeszcze raz dziękuję za przykłady

Edit: kod do czujników niestety nie działa

Właśnie przetestowałem to dla mnie, działa, potrzebujesz otwartego pokoju. I czujnik już utworzony i wybrany przed uruchomieniem.

Ach! 

Czy ktoś ma rozwiązanie, aby uniknąć konieczności wyboru czujnika?

Spojrzałem trochę w bok, ale niestety utknąłem.

Dziękuję

Oto 1. link z kodem do wyszczególnienia wszystkich czujników, działa częściowo, ale może dać dobry lead:

https://www.eng-tips.com/viewthread.cfm?qid=468348

'https://www.eng-tips.com/viewthread.cfm?qid=468348
Option Explicit
Sub main()
    Dim swApp As SldWorks.SldWorks
    Dim swPart As SldWorks.PartDoc
    Dim swModel As SldWorks.ModelDoc2
    Dim swFeat As SldWorks.Feature
    Dim swSubFeat As SldWorks.Feature
    Dim swSensor As SldWorks.Sensor
    Dim swDimSensor As SldWorks.DimensionSensorData
    Dim sensorValue As Double
    Dim text As String

    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swFeat = swModel.FirstFeature

    Do While Not swFeat Is Nothing
    Debug.Print "swFeat.Name" & swFeat.Name
        If (swFeat.Name = "Capteurs") Then
            Set swSubFeat = swFeat.GetFirstSubFeature
            Do While Not swSubFeat Is Nothing
                Set swSensor = swSubFeat.GetSpecificFeature2
                'Mis en commentaire car ne fonctionne pas
                'swDimSensor = swSubFeat.GetSensorFeatureData
                'sensorValue = swDimSensor.sensorValue

                Debug.Print swSensor.Name & ": " & sensorValue
                Set swSubFeat = swSubFeat.GetNextSubFeature
            Loop
        End If
        Set swFeat = swFeat.GetNextFeature
    Loop
    MsgBox (text)
End Sub

Tu też jest link z kodem w C++, będziesz musiał zrobić tłumaczenie w vba, ale zasada jest tam:

https://r1132100503382-eu1-3dswym.3dexperience.3ds.com/#community:yUw32GbYTEqKdgY7-jbZPg/iquestion:jpK7Vvu2QlugstMincAFoQ