| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Benutzerdefinierte iProperties vergeben (3148 mal gelesen)
|
CADwilli Mitglied
Beiträge: 8 Registriert: 05.11.2003 Erare humanum est
|
erstellt am: 05. Nov. 2003 13:55 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich möchte, da das Aufrufen des Dialogs und des entsprechenden Kartenreiters zu kompliziert ist, ein VBA-Script erstellen um meine benutzerdefinierte Bauteil-Variable Artikel zu belegen. Habe aber keine Ahnung wie das gehen soll. Wer kann mir auf die Sprünge helfen? VBA in Word und Excel habe ich schon gemacht, also kein Grundlehrgang nötig. Gruß Wilfried Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
waldi Mitglied Softwerker
Beiträge: 272 Registriert: 07.08.2001
|
erstellt am: 06. Nov. 2003 08:26 <-- editieren / zitieren --> Unities abgeben: Nur für CADwilli
Du holst dir von deinem Dokument die PropertySets. Da suchst du dann dann das PropertySet das folgenden InternalName hat: "{D5CDD505-2E9C-101B-9397-08002B2CF9AE}" Also mit propSets.item("{D5CDD505-2E9C-101B-9397-08002B2CF9AE}") Evtl. musst du das über eine Schleife machen und die Namen selbst vergleichen, da der Inventor an dieser Stelle manchmal spinnt. Auf dieses PropertySet kannst du dann einfach Add(name,wert) aufrufen, um eine Variable hinzuzufügen oder dir mit Item(name) die Property holen, wenn sie schon da ist und den Wert verändern. Hab leider gerade keinen Code da, aber du schaffst das schon :-))
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwilli Mitglied
Beiträge: 8 Registriert: 05.11.2003 Erare humanum est
|
erstellt am: 06. Nov. 2003 08:55 <-- editieren / zitieren --> Unities abgeben:
|
waldi Mitglied Softwerker
Beiträge: 272 Registriert: 07.08.2001
|
erstellt am: 06. Nov. 2003 09:50 <-- editieren / zitieren --> Unities abgeben: Nur für CADwilli
Hab doch was gefunden: Sub addProp() Dim partDoc As partDocument Set partDoc = ThisApplication.ActiveDocument Dim props As PropertySets Set props = partDoc.PropertySets Dim customProp As PropertySet Set customProp = props.Item("{D5CDD505-2E9C-101B-9397-08002B2CF9AE}") Dim myProp As Property Set myProp = customProp.Add("Test", "Artikel") End Sub
Add geht allerdings nur, wenn es die Property noch nicht gibt
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
lbcad Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau und CAD-Trainer
Beiträge: 3794 Registriert: 15.02.2001 DELL Precision 7520 Win10Pro-64 Inventor mit Vault Professional 2022 --------------------- Während man es aufschiebt, verrinnt das Leben. Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.)
|
erstellt am: 06. Nov. 2003 12:59 <-- editieren / zitieren --> Unities abgeben: Nur für CADwilli
|
CADwilli Mitglied
Beiträge: 8 Registriert: 05.11.2003 Erare humanum est
|
erstellt am: 18. Nov. 2003 13:50 <-- editieren / zitieren --> Unities abgeben:
|
max2 Mitglied Technischer Zeichner
Beiträge: 69 Registriert: 25.09.2003 AIS 8
|
erstellt am: 19. Nov. 2003 11:08 <-- editieren / zitieren --> Unities abgeben: Nur für CADwilli
|
CADwilli Mitglied
Beiträge: 8 Registriert: 05.11.2003 Erare humanum est
|
erstellt am: 19. Nov. 2003 11:29 <-- editieren / zitieren --> Unities abgeben:
|
CADwilli Mitglied
Beiträge: 8 Registriert: 05.11.2003 Erare humanum est
|
erstellt am: 20. Nov. 2003 12:14 <-- editieren / zitieren --> Unities abgeben:
Hallo waldi, erstmal nochmals Danke für Deine Antworten. Jetzt noch eine Frage. Der InternalName des Benutzerdefinierten PropertySet ist, wie Du schreibst: "{D5CDD505-2E9C-101B-9397-08002B2CF9AE}" Wie ist denn dann der InternalName für den System PropertySet, z.B. Blattgrösse? Gruß Willi
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
waldi Mitglied Softwerker
Beiträge: 272 Registriert: 07.08.2001
|
erstellt am: 21. Nov. 2003 09:08 <-- editieren / zitieren --> Unities abgeben: Nur für CADwilli
Hmm, Blattgrösse hab ich jetzt nicht gefunden. In der Doku findest du das alles unter den Enums->PropertyEnums. Da stehen zum einen die Namen der einzelnen Properties und auch die InternalNames der PropetySets. Mehr weiss ich jetzt leider auch nicht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |