Forum:AutoCAD VBA
Thema:Werte aus Teilereferenz per VBA auslesen
Möchten Sie sich registrieren?
Wer darf antworten? Registrierte Benutzer können Beiträge verfassen.
Hinweise zur Registrierung Sie müssen registriert sein, um Beiträge oder Antworten auf Beiträge schreiben zu können.
Ihr Benutzername:
Ihr Kennwort:   Kennwort vergessen?
Anhang:    Datei(en) anhängen  <?>   Anhänge verwalten  <?>
Grafik für den Beitrag:                                                
                                                       
Ihre Antwort:

Fachbegriff
URL
Email
Fett
Kursiv
Durchgestr.
Liste
*
Bild
Zitat
Code

*HTML ist AUS
*UBB-Code ist AN
Smilies Legende
Netiquette

10 20 40

Optionen Smilies in diesem Beitrag deaktivieren.
Signatur anfügen: die Sie bei den Voreinstellungen angegeben haben.

Wenn Sie bereits registriert sind, aber Ihr Kennwort vergessen haben, klicken Sie bitte hier.

Bitte drücken Sie nicht mehrfach auf "Antwort speichern".

*Ist HTML- und/oder UBB-Code aktiviert, dann können Sie HTML und/oder UBB Code in Ihrem Beitrag verwenden.

T H E M A     A N S E H E N
insidERR

Beiträge: 105 / 0

Win10 x64 Pro, ACAD Mech.2018, AI 2018 Sim., AV WG 2018, VBA/.NET

Danke für deine Ideen.
Klappt leider nicht.
Bekomme die Fehlermeldung "Keine Zuweisung an Datenfeld möglich" und bei
Code:
Set vData = BlockCol(i).Data
wird vData markiert.

Hier nochma der ganze Code

Code:
Private Sub checkPositionsNummern() '05.02.2020
    'On Error Resume Next
    Dim BlockCol As Collection, erLine As Single, Objekt As Object
    Set BlockCol = New Collection
   
    For Each Objekt In ThisDrawing.ModelSpace
        If TypeName(Objekt) = "IMcadPartReference3" Then BlockCol.Add Objekt
       
    Next
   
    Dim vData() As Variant
    For i = 1 To BlockCol.Count
        'hier alle gefundenen Teilereferenzen durchlaufen und die Werte "Data(1,0)" , "Data(1,1)" usw. auslesen
        'UNFERTIG: hier sollten alle Details der "Positionsnummern" aufgelistet werden. So könnte man doppelte Einträge in Schnittzeichnungen finden.
      Set vData = BlockCol(i).Data
      For j = 0 To 4
        Debug.Print "Data " & j & " : ", vData(j, 0), vData(j, 1)
      Next j
    Next i
End Sub

Schade, vielleicht findet das hier jemand der auch Mechanical hat.