Hot News:
   

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Blockattribut auslesen

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

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
  
Von Digital Twins bis Hochleistungs-Computing: PNY präsentiert seine Zukunftstechnologien für die Industrie von morgen, eine Pressemitteilung
Autor Thema:  Blockattribut auslesen (1812 mal gelesen)
Hänk
Mitglied



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

Beiträge: 126
Registriert: 10.05.2004

AutoCAD 2005

erstellt am: 16. Mai. 2006 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

Hi zusammen

Eine kleine Frage:
Wie lässt sich in AutoCAD 2004 über VBA ein Wert eines Attributs auslesen, das sich in einem bestimmten Block befindet?

Viele Grüsse
Hänk

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13533
Registriert: 30.11.2003

ACAD 2008 Mechanical

erstellt am: 16. Mai. 2006 17:04    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 Hänk 10 Unities + Antwort hilfreich

Das Attribut befindet sich in der Blockreferenz .. im Block hast du bloß die Attributsdefinition .. und in der Blockreferenz gibts die Methode Getattributes .. ist in der Hilfe ausführlich mit Beispiel beschrieben ...

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

Hänk
Mitglied



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

Beiträge: 126
Registriert: 10.05.2004

AutoCAD 2005

erstellt am: 16. Mai. 2006 19:38    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

Hi zusammen

Ich tue mich damit ziemlich schwer, trotz Hilfe. Ich denke es ist einfacher nach Blöcken zu suchen statt nach dem Attribut oder?

Wie kann ich den schaffen den aktuellen Modellbereich zu durchsuchen nach einem Block mit einem bestimmten Namen?

Grüsse
Hänk

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

Carsten1210
Mitglied
staatl. geprüfter Holztechniker


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

Beiträge: 1362
Registriert: 24.07.2002

erstellt am: 16. Mai. 2006 19:46    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 Hänk 10 Unities + Antwort hilfreich

Hallo Hänk,

Du musst dir erst den Block herausfiltern, wo das Attribut enthalten ist. Dann Kannst über die Attribut-Auflistung im Block das Attribut auslesen.
Schau mal in der Hilfe unter getattribut nach.

Gruß, Carsten

Edit:
Ich sollte doch nicht so flüchtig lesen, daher hier noch ein bißchen Beispiel-Code:
Public Sub Att()
  Dim EntGrp(0) As Integer
  Dim EntPrp(0) As Variant
  Dim BlkObj As Object
  On Error Resume Next
  ThisDrawing.SelectionSets.Item("sset").Delete
  Set ssnew = ThisDrawing.SelectionSets.Add("sset")
    EntGrp(0) = 2
    EntPrp(0) = "Blockname"
    ssnew.Select acSelectionSetAll, , , EntGrp, EntPrp
    If ssnew.Count >= 1 Then
      Attrib = ssnew.Item(0).GetAttributes
      MsgBox (LTrim(Attrib(0).textString))
    Else
    MsgBox "Block '" & EntPrp(0) & "' nicht gefunden!"
    End If
End Sub

[Diese Nachricht wurde von Carsten1210 am 16. Mai. 2006 editiert.]

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



Anzeige:Infos zum Werbeplatz >>

Local CRS CAD APP für GIS, Vermessung und Kartografie, AEC - Architektur-, Ingenieur- und Bauwesen, Allgemeine Werkzeuge

Mit crsTools Local CRS können Georeferenzierte Lagepläne aus verschiedenen Koordinatensystemen (UTM, Gauß-Krüger) in ein praktisch verzerrungsfreies, lokales Koordinatensystem transformiert werden. Und wieder zurück. Man arbeitet also mit realen, der Örtlichkeit entsprechenden, Längen und Maßen.

Brischke
Ehrenmitglied V.I.P. h.c.
CAD on demand GmbH



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

Beiträge: 4201
Registriert: 17.05.2001

ACAD20XX, defun-tools

erstellt am: 16. Mai. 2006 19:49    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 Hänk 10 Unities + Antwort hilfreich

Hallo Hänk,

ich würde vorschlagen mit einem Auswahlsatz. Ein ausführliches Beispiel findest du hier
Dann hast du also schon mal die Blockreferenzen eingesammelt. nun solltest du mit GetAttributes die Attribute einer jeden Blockreferenz ermitteln und kannst aus den Eigenschaften derer den Wert ermitteln.

Bei Fragen ...

Grüße Holger

------------------
Holger Brischke
CAD on demand GmbH
Individuelle Lösungen von Heute auf Morgen.

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

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

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

(c)2025 CAD.de | Impressum | Datenschutz