| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: benutzerdefinierten Wert auslesen (1230 mal gelesen)
|
Zimmermann Mitglied Maschinenbautechniker Konstrukteur
Beiträge: 34 Registriert: 28.06.2004
|
erstellt am: 23. Aug. 2006 09:15 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich lese jetzt schon seit Gestern und bin total verwirrt!! ich möchte im AIP11 im Part - nur einen benutzerdefinierten Wert auslesen (AA1)und in eine msg box ausgeben - schaffe es aber nicht daran zu kommen ------------------ Gruß Fredy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 23. Aug. 2006 09:35 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
|
Zimmermann Mitglied Maschinenbautechniker Konstrukteur
Beiträge: 34 Registriert: 28.06.2004 Precision M4700 i7 32 GB RAM NVIDIA
|
erstellt am: 23. Aug. 2006 09:42 <-- editieren / zitieren --> Unities abgeben:
|
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 23. Aug. 2006 09:48 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
Hallo Fredy, versuch's mal hiermit: Private Sub getMyProp() Dim oApp As Inventor.Application Set oApp = ThisApplication If oApp.ActiveDocumentType <> kPartDocumentObject Then Exit Sub Dim oDoc As PartDocument Set oDoc = oApp.ActiveDocument Dim oProp As Property On Error Resume Next Set oProp = oDoc.PropertySets(4).Item("AA1") If Err Then MsgBox "Property 'AA1' existiert nicht", 15, "falscher Fehler" Else MsgBox oProp.Value End If On Error Resume Next Set oProp = oDoc.PropertySets(4).Item("AA2") If Err Then MsgBox "Property 'AA2' existiert nicht", 15, "falscher Fehler" Else MsgBox oProp.Value End If On Error Resume Next Set oProp = oDoc.PropertySets(4).Item("AA3") If Err Then MsgBox "Property 'AA3' existiert nicht", 15, "falscher Fehler" Else MsgBox oProp.Value End If End Sub Grüsse, Paul
www.morecam.ch www.thinkcad.de
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zimmermann Mitglied Maschinenbautechniker Konstrukteur
Beiträge: 34 Registriert: 28.06.2004 Precision M4700 i7 32 GB RAM NVIDIA
|
erstellt am: 23. Aug. 2006 09:56 <-- editieren / zitieren --> Unities abgeben:
|
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001
|
erstellt am: 23. Aug. 2006 10:02 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
|
Zimmermann Mitglied Maschinenbautechniker Konstrukteur
Beiträge: 34 Registriert: 28.06.2004 Precision M4700 i7 32 GB RAM NVIDIA
|
erstellt am: 23. Aug. 2006 10:10 <-- editieren / zitieren --> Unities abgeben:
ich habe mir zwar mal ne VBA schulung gegönnt autocad - aber wenn man lange nichts macht dann fällt gleich wieder soviel den bach runter. jetzt bin ich ja noch nicht ganz fertig - muß das ja noch in ein ben. iprop reinbekommen. ------------------ Gruß Fredy 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
|
erstellt am: 25. Aug. 2006 06:14 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
Das hatten wir doch auch schon öfters z.B. geht das so: Code:
Sub Property_setzen(oDoc As Document, sPropName As String, vPropValue As Variant) ' Belegt eine Property mit einem Wert. ' Ist die Property nicht vorhanden, so wird sie angelegt. ' Obtain the PropertySets collection object Dim oPropSets As PropertySets Set oPropSets = oDoc.PropertySets Dim bPropertyDa As Boolean Dim oProp As Property bPropertyDa = False ' Iterate through all the PropertySets one by one using for loop ' and changing its value if found Dim oPropSet As PropertySet For Each oPropSet In oPropSets For Each oProp In oPropSet 'Debug.Print oProp.Name If oProp.Name = sPropName Then oProp.Value = vPropValue bPropertyDa = True Exit For End If Next Next 'Property anlegen und Wert eintragen If Not bPropertyDa Then 'oDoc.PropertySets("{D5CDD505-2E9C-101B-9397-08002B2CF9AE}").Add vPropValue, sPropName oDoc.PropertySets.Item("User Defined Properties").Add vPropValue, sPropName End If Set oProp = Nothing Set oPropSet = Nothing Set oPropSets = Nothing End Sub
------------------ Gruß Lothar --------------------------------------------------- Während man es aufschiebt, verrinnt das Leben. —Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |