Sie können in einem einzigen Vorgang mehrere Symbole importieren, indem Sie den Befehl MAPSYMBOLIMPORTEXPORT oder ein Microsoft VBA-Skript verwenden.
Wenn Sie Punkt-, Linien- oder Polygonobjekte mit einem Stil versehen, können Sie mit der Option Laden ein Symbol importieren. Sie können auch, wie nachstehend beschrieben, den Befehl MAPSYMBOLIMPORTEXPORT verwenden.
So importieren Sie Symbole über eine Benutzeroberfläche
Sie können Blöcke in DWG-Dateien als Symbole importieren. Sie können in das Symbol-Repository auch eine Symbolbibliothek (*.layer), ein Vektorsymbol (*.xml), eine Schraffurdefinition (*.pat), einen Linienstil (*.lin) oder Rasterbilder (*.gif, *.jpg *.bmp *.png) importieren.
So importieren Sie Symbole ohne Benutzeroberfläche
CMDDIA 0 FILEDIA 0 _MAPSYMBOLIMPORTEXPORT _IMPORT "C:\data\MySymbols.dwg" _YES
Zur Zeitersparnis können Sie die Symbole für viele Zeichnungen mithilfe eines VBA-Skripts (Microsoft Visual Basic for Applications) in einem einzigen Vorgang importieren. Das folgende Skript ist ein Beispiel. Sie können es als Vorlage verwenden, die erforderlichen Änderungen vornehmen und es als .bas-Datei speichern.
Attribute VB_Name = "ImportSymbolIntoDWG" Sub ImportSymbolIntoAllDWG() Dim fileSystemObject, fileSystemFolder, file, fileCollection Dim collectionOfFiles As New Collection Dim path As String ' Define where the DWG files are located path = "C:\Autodesk\DWGFiles" Dim prototypeDWG As String ' Define where the symbol(s) should be imported from prototypeDWG = "C:\Autodesk\Prototype\Prototype_GA_modified.dwg" Dim currentSDI As Integer currentSDI = ThisDrawing.GetVariable("SDI") If (currentSDI = 1) Then MsgBox "The functions works only with multiple drawings [SDI=0]" Exit Sub End If '' use this to request the path 'path = ThisDrawing.Utility.GetString(1, vbCrLf & "Enter the path of the DWG files to update: ") 'prototypeDWG = ThisDrawing.Utility.GetString(1, vbCrLf & "Enter the path of the prototype DWG: ") ThisDrawing.SetVariable "FILEDIA", 0 ThisDrawing.SetVariable "CMDDIA", 0 Set fileSystemObject = CreateObject("Scripting.FileSystemObject") Set fileSystemFolder = fileSystemObject.GetFolder(path) Set fileCollection = fileSystemFolder.Files For Each file In fileCollection If UCase(Right(file.Name, 4)) = UCase(".dwg") Then collectionOfFiles.Add file.path End If Next For Each drawing In collectionOfFiles Application.Documents.Open (drawing) ThisDrawing.SendCommand "_MAPSYMBOLIMPORTEXPORT" & vbCr & "_IMPORT" & vbCr & prototypeDWG & vbCr & "_YES" & vbCr ThisDrawing.Save ThisDrawing.Close Next drawing End Sub
Im Beispielskript ist ein Modul, "ImportSymbolIntoDWG" mit einem untergeordneten Element, "ImportSymbolIntoAllDWG()", vorhanden. Sie müssen die Variable "path" ändern, um das Verzeichnis, in dem sich die Zeichnungen befinden, anzugeben, und die Variable "prototypeDWG" so ändern, dass sie auf die DWG-Datei verweist, die die zu importierenden Symbole enthält.
So importieren Sie mithilfe eines VBA-Skripts Symbole für mehrere Zeichnungen
In einer Meldung werden Sie dazu aufgefordert, den Autodesk AutoCAD VBA Enabler herunterzuladen, sofern Sie ihn noch nicht installiert haben.
Wenn das System eine Warnung aufgrund der Makros ausgibt, klicken Sie auf Makros aktivieren.