Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Blockdefinition löschen

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
  
PNY wird von NVIDIA zum Händler des Jahres gewählt - zum dritten Mal in Folge, eine Pressemitteilung
Autor Thema:  Blockdefinition löschen (4064 mal gelesen)
MartinM
Mitglied



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

Beiträge: 122
Registriert: 27.11.2001

erstellt am: 23. Aug. 2005 17: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 zusammen,

nachdem ich in einer Zeichnung alle Blockreferenzen gelöscht habe, möchte ich auch noch die Blockdefinition löschen. Das geht ganz gut mit Thisdrawing.Blocks.Item("MeinBlock").delete ! Ich komme jedoch nicht weiter, wenn es sich um einen verschachtelten Block handelt !
Beispiel: Ich habe einen Block A, der die Blöcke B und C beinhaltet.
Beim Versuch, die Blockdefinition A zu löschen, erscheint die Meldung "Objekt wird referenziert". Diese Meldung verstehe ich, wenn ich B oder C versuch zu löschen, nicht aber bei A.

Hat jemand eine Idee ?

Viele Grüsse

Martin

[Diese Nachricht wurde von MartinM am 23. Aug. 2005 editiert.]

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

JoeG
Mitglied
Systemadmin NX und Autocad


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

Beiträge: 122
Registriert: 18.10.2002

Autocad 2000 und Win2000

erstellt am: 24. Aug. 2005 07:32    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 MartinM 10 Unities + Antwort hilfreich

Versuch es mit „ThisDrawing.PurgeAll“ das löscht alle nicht mehr verwendeten Symbole

Joe

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

MartinM
Mitglied



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

Beiträge: 122
Registriert: 27.11.2001

erstellt am: 24. Aug. 2005 09:18    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 Joe,

Vielen Dank für den Tipp - es funzt.

Grüsse

Martin

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

h1981
Mitglied
student

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

Beiträge: 4
Registriert: 11.08.2005

erstellt am: 26. Aug. 2005 07:54    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 MartinM 10 Unities + Antwort hilfreich

aber dieser befehl ("ThisDrawing.PurgeAll") löscht auch alle unbenutzten bzw. unbelegten layer, usw. ..., also dinge, die man später noch brauchen könnte.

gibt es eine möglichkeit unbenutzte blockdefinitionen auch ohne "sendcommand" zu löschen?

mfg hannes

[Diese Nachricht wurde von h1981 am 26. Aug. 2005 editiert.]

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

JoeG
Mitglied
Systemadmin NX und Autocad


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

Beiträge: 122
Registriert: 18.10.2002

Autocad 2000 und Win2000

erstellt am: 26. Aug. 2005 12:28    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 MartinM 10 Unities + Antwort hilfreich

Hallo Hannes

Das ist schon richtig.
Wenn man Layer usw. die man nicht benutzt in der Zeichnung beläst verschwendet man nur unnütz Speicherplatz und Zeit beim laden der Datei.
Sollte man die Elemente irgendwann wieder brauchen kann man sie ja wieder einfügen.

Soweit ich weis gibt es in VBA keine Möglichkeit um nur eine Blockdefinition zu löschen.

mfg
Joe

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

MartinM
Mitglied



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

Beiträge: 122
Registriert: 27.11.2001

erstellt am: 26. Aug. 2005 12:33    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,

Grundsätzlich kann man eine Blockdefinition mit
Thisdrawing.Blocks.Item("MeinBlock").delete
löschen !
Setzt natürlich voraus, dass keine Blockreferenz vorhanden ist.

Ich habe diesen Beitrag losgetreten, weil es nicht funktioniert, wenn es sich bei der Blockdefinition um einen verschachtelten Block handelt !

Viele Grüsse

Martin

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

h1981
Mitglied
student

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

Beiträge: 4
Registriert: 11.08.2005

erstellt am: 26. Aug. 2005 13:19    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 MartinM 10 Unities + Antwort hilfreich

@ JoeG: es geht hier allerdings um rund 40-50 layer, jeder ausdefiniert für einzelne zeichenaufgaben (ist sozusagen das ausgangsfile für neue zeichnungen)

@ MartinM: stimmt, wieder einmal bäume vor den augen gehabt ;-)

danke, hannes

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

Stelli1
Moderator
Verm.-Ing.


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

Beiträge: 1526
Registriert: 17.08.2005

Map 2000-2014, Rasterdesign,
MapGuide, Autodesk Topobase,
VS6, VS.net 2013

erstellt am: 26. Aug. 2005 17:06    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 MartinM 10 Unities + Antwort hilfreich

Hallo Martin,

reicht nicht die Funktion [Datei\Dienstprogramme\Bereinigen] ?

per VBA gäb es wohl die Möglichkeit die Blockdefinitionen
rekursiv nach weiteren Blockdefinitionen zu untersuchen.

oder mit sendCommand
ThisDrawing.SendCommand "-bereinig BL " & vbCrLf & "Nein "
Beispiel funkt leider nicht richtig, da ich die Kommandozeile
nicht hinbekomme.

Stelli1

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



Anzeige:Infos zum Werbeplatz >>

ISYBAU Translator 2024 CAD APP für Kostenlose Werkzeuge / Add-Ons, Infrastruktur, Datenaustausch

Das Original jetzt auch auf CADSOMA! Der ISYBAU Translator für Autodesk® Civil 3D® 2024 ist eine unverzichtbare Erweiterung für jeden, der Kanaldaten im ISYBAU (-XML) Format exportieren oder importieren muss. Es besteht ein direkter Zugriff auf die Autodesk® Civil 3D® eigenen Daten.

autogis
Mitglied
Dr.-Ing. E-Technik


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

Beiträge: 185
Registriert: 09.02.2001

erstellt am: 06. Feb. 2009 13:10    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 MartinM 10 Unities + Antwort hilfreich

Hi Stelli,

da ich vor dem selben Problem stehe, scheidet purgeAll aus. Mit SendCommand habe ich anscheinend das selbe Problem, wie Du auch.

Blieb mir der Weg über ein Script.

SendCommand ("filedia 0 ")
SendCommand ("_script C:\...\bereinigung.scr" & vbCr)
SendCommand ("filedia 1 ")

Damit sind noch alle Layer, Linientypen ... da, die Blöcke aber raus.

Vielleicht hilft es ja dem einen oder anderen.

Viele Grüße - Peter

[Diese Nachricht wurde von autogis am 06. Feb. 2009 editiert.]

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)2025 CAD.de | Impressum | Datenschutz