Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Multivalue Parameter

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Multivalue Parameter (886 mal gelesen)
OibelTroibel
Mitglied
Konstrukteur


Sehen Sie sich das Profil von OibelTroibel an!   Senden Sie eine Private Message an OibelTroibel  Schreiben Sie einen Gästebucheintrag für OibelTroibel

Beiträge: 536
Registriert: 18.04.2014

ACAD/Inventor 2018-21

erstellt am: 16. Apr. 2020 16:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen

Wie prüfe ich in vba den gewählten Wert eines multivalue userParameter?

Code:
Dim oDoc As AssemblyDocument
Set oDoc = ThisApplication.ActiveDocument

Dim oRefDocs As DocumentsEnumerator
Set oRefDocs = oDoc.AllReferencedDocuments

Dim oRefDoc As Document

For Each oRefDoc in oRefDocs

Dim oParameters As UserParameters
Set oParameters = oRefDoc.ComponentDefinition.Parameters.UserParameters

MsgBox oParameters.Item("Parameter").value

Next



Code ist nur Beispielhaft. Ich möchte den Wert eines userParameter prüfen und je nach Wert etwas ausführen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 17. Apr. 2020 05:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für OibelTroibel 10 Unities + Antwort hilfreich

Moin

Du kannst den Wert von Parameter.Value prüfen oder wenn die Einheit dabei sein soll Parameter.Expression. Die Werteliste eines MultiValueParameters befindet sich in Parameter.ExpressionList.

------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

OibelTroibel
Mitglied
Konstrukteur


Sehen Sie sich das Profil von OibelTroibel an!   Senden Sie eine Private Message an OibelTroibel  Schreiben Sie einen Gästebucheintrag für OibelTroibel

Beiträge: 536
Registriert: 18.04.2014

ACAD/Inventor 2018-21

erstellt am: 17. Apr. 2020 08:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Ralf

Danke für deine Rückmeldung. Ich habe aber das Gefühl, wenn ich mit Parameter.value den Wert prüfe, erhalte ich sämtliche Parameter-Einträge der Liste geprüft.
Also wenn ich Bspw. prüfe If Parameter.Value = "Apfel" Then ..., "Birne" aber der aktuelle Parameter-Wert ist, wird trotzdem Then ... ausgeführt.
Oder muss ich mit multivalue Parameter etwas speziell beachten?

Beste Grüsse
Raphael

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Projektleiter Konstruktiver Ingenieurbau (w/m/d)

Gemeinsam. Sicher. Mobil.

Eine funktionierende Autobahninfrastruktur ist der Garant dafür, dass Deutschland mobil ist. Damit das so bleibt, brauchen wir Ihre Expertise als Ingenieur oder Ingenieurin.

Tausende Brücken, hunderte Tunnel und unzählige Nebenanlagen müssen regelmäßig geprüft, gewartet und erneuert werden. Auch die Steuerung des Verkehrs sowie die Koordination ...

Anzeige ansehenProjektmanagement
rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 18. Apr. 2020 08:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für OibelTroibel 10 Unities + Antwort hilfreich

Moin

Nein, value enthält nur den aktuellen Wert. Ich hab es mit numerischen und Textwerten probiert, funktioniert beides korrekt. Du kannst mal einen Haltepunkt auf die If-Zeile setzen und dir den Inhalt von Parameter.Value ansehen. Oder du schreibst dir in beide Teile eine Debug.Print Anweisung, falls das Fehlverhalten in einer sehr häufig duchlaufenen Schleife auftritt. Mit STRG+G das Direktfenster einblenden, falls noch nicht vorhanden und nach dem Durchlauf schauen wann Parameterwert und Zweig nicht zusammenpassen.

Code:

Private Sub UserParameterValue()

Dim oDoc As PartDocument
Set oDoc = ThisApplication.ActiveDocument

Dim oParam As UserParameter
Set oParam = oDoc.ComponentDefinition.Parameters.UserParameters.Item("test")

If oParam.Value = "Apfel" Then
    Debug.Print "File: " & oDoc.FullDocumentName & " --- Then-Zweig --- Parameter test: " & oParam.Value
Else
    Debug.Print "File: " & oDoc.FullDocumentName & " --- Else-Zweig --- Parameter test: " & oParam.Value
End If
End Sub


------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz