Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  DWG in DGN Batchkonvertierung???

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: der unverzichtbare Partner für umfassende KI-Lösungen von Workstations bis zu Edge Computing und KI-Cluster-Bereitstellung, eine Pressemitteilung
Autor Thema:  DWG in DGN Batchkonvertierung??? (2162 mal gelesen)
SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

WIN XP PRO SP2,
AMD 64 3200
2* 512MB DDR400
ATI 9600XT
AIP 2008 SP3

erstellt am: 24. Jun. 2010 14: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

Hallo,

ich habe eine riesen Aufgabe vor mir. Ich soll mehrere hundert DWG-Dateien in das Microstation V8-Format mit AutoCAD bringen. 
Nun hole ich aber mal etwas weiter aus. 
Wir haben hier AIS 2008 im Einsatz, wobei wir mit Inventor konstruieren. Aufgrund der vorhandenen Subscrition könnten wir auch auf AutoCAD 2011 wechseln, wenn hier die Möglichkeiten der Konvertierung besser sind als im AutoCAD 2008.

Nun hatte ich mir ein Macro vorgestellt, mit ungefähr folgender Funktion.
Ich starte das Macro im AutoCAD.
Dann muss ich ein Verzeichnis angeben, in dem die DWG-Dateien liegen und die DGN-Dateien abgelegt werden.
Die SEED-Datei ist fest im Macro hinterlegt. Diese ist immer die gleiche.

Nun ist meine Frage:
Gibt es so ein Macro?
Wenn nein, was ist das für ein Aufwand so eines zu schreiben?


Für Tipps und Ratschläge immer offen.


Gruß
SKYSURFER

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: 13530
Registriert: 30.11.2003

ACAD 2008 Mechanical

erstellt am: 24. Jun. 2010 15:02    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 SKYSURFER 10 Unities + Antwort hilfreich

Stichwort ist hier Script, Scripgenerator und die richtige Verwendung des Befehls _export / _DGNEXPORT ...


Sollte machbar sein. Ähnliches (automatisches amsetupdwg für alle Zeichnungen eines zu wählenden Verzeichnisses mit zu wählender Vorlage) hatte ich schon mal -- allerdings via Lisp - realisiert.

------------------
      - 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


Ex-Mitglied

erstellt am: 24. Jun. 2010 15:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

solange Du mit SendCommand durchkommst (mittels Befehl _-DGNEXPORT), dann sollte es eigentlich nur ein paar Minuten sein. Wobei ich glaube, dass der Befehl erst später als mit 2008 gekommen ist, also wird dafür der Einsatz von 2011 sicher vorteilhaft sein.

- alfred -

------------------
www.hollaus.at

Soldnerkugel
Mitglied



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

Beiträge: 131
Registriert: 29.01.2010

Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE

erstellt am: 24. Jun. 2010 16:27    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 SKYSURFER 10 Unities + Antwort hilfreich

da war's 
alleine hätte ich da wohl noch bis nächste Woche danach gesucht. (wiedermal: )Danke. 

------------------

http://www.stupidedia.org/stupi/Rechter_Winkel

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

SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

WIN XP PRO SP2,
AMD 64 3200
2* 512MB DDR400
ATI 9600XT
AIP 2008 SP3

erstellt am: 25. Jun. 2010 08:00    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

Zitat:
Original erstellt von Soldnerkugel:
da war's  
alleine hätte ich da wohl noch bis nächste Woche danach gesucht. (wiedermal: )Danke. 



Hallo Soldnerkugel,

du hast anscheinend schon mehr verstanden wie ich. 


Gruß
SKYSURFER

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

SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

WIN XP PRO SP2,
AMD 64 3200
2* 512MB DDR400
ATI 9600XT
AIP 2008 SP3

erstellt am: 25. Jun. 2010 08:40    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

Zitat:
Original erstellt von a.n.:
Hi,

solange Du mit SendCommand durchkommst (mittels Befehl _-DGNEXPORT), dann sollte es eigentlich nur ein paar Minuten sein. Wobei ich glaube, dass der Befehl erst später als mit 2008 gekommen ist, also wird dafür der Einsatz von 2011 sicher vorteilhaft sein.

- alfred -


Hallo a.n.,

wie schon geschrieben, AutoCAD 2011 ist nicht das Problem. Das habe ich im Schrank liegen.
Ich habe aber noch nicht so den Plan wie ich mit AutoCAD VBA überhaupt anfangen muss.

Gibt es irgendwo eim paar Anleitungen und Beispiele?


Gruß
SKYSURFER

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


Ex-Mitglied

erstellt am: 25. Jun. 2010 09:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

was ist denn Dein aktueller Stand? Wenn es das erste mal ist, dass Du mit VBA etwas machen willst, dann wirds nicht einfach, wenn Du überhaupt das erste mal was programmierungsartiges machst, dann such Dir ein Schulungsunternehmen, das Dir ein paar Tage Wissen auf's Aug drückt. 

Hier im Forum jetzt die Klicks zu beschreiben, wie Du den VBA-Editor startest, dort Code hineintipst, mit Debug den Lauf überprüfst, ..... überschreitet den Sinn des Forums.

Beschreib bitte mal, was Dein aktueller Wissensstand ist, sonst wissen wir nicht, wo anfangen.

Alternativ schau Dir bitte CADmiums Beitrag oben an, da brauchst Du gar nicht programmieren.

- alfred -

------------------
www.hollaus.at

SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

WIN XP PRO SP2,
AMD 64 3200
2* 512MB DDR400
ATI 9600XT
AIP 2008 SP3

erstellt am: 25. Jun. 2010 11: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

Hallo a.n.,

also mit AutoCAD VBA habe ich noch nichts gemacht. Da kenne ich mich null aus.
Mit Inventor VBA habe ich schon was gemacht, bzw kann die Macros lesen und verstehen.
Mit PHP und MySQL habe ich eigene Websiten mit Bildergalerie, Gästebuch, ... geschrieben.

Natürlich kann man PHP nicht mit VBA vergleichen. Aber das grundlegende Verständnis für ein
Programmiersprache ist vorhanden. 

Ich hatte halt gehofft, dass hier jemand im Forum das gleiche Problem hatte wie ich uns dafür
schon eine Lösung ausgearbeitet hat. Somit hätte ich diese nur anpassen müssen.


Zum Scripgenerator:
Welchen meint ihr?
zufllig den: http://www.74mph.com/

oder diesen: http://www.dotsoft.com/superscript.htm


Gruß
SKYSURFER

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

SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

WIN XP PRO SP2,
AMD 64 3200
2* 512MB DDR400
ATI 9600XT
AIP 2008 SP3

erstellt am: 25. Jun. 2010 15:27    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

@CADmium

so langsam aber sicher verstehe ich was du geschrieben hattest.
verwendest du den im Mechanical unter
Hilfsmittel -> Skript -> Skript-Generator ???


Gruß
SKYSURFER
p.s. ich vermute es war absicht nur das Bild zu posten und nicht das lisp

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: 13530
Registriert: 30.11.2003

ACAD 2008 Mechanical

erstellt am: 25. Jun. 2010 15:34    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 SKYSURFER 10 Unities + Antwort hilfreich

nee .... wie gesagt, ich hab das was eigenes ... aber der unter Mech sollte doch einen Versuch wert sein, oder ? Ist immer die Frage des Aufwandes und für wen man das macht ? Normalo-user hat am liebsten einen Dialog (wie oben gepostet) mit einem OK-Button und gut.

Wenn ich für mich selbst für den einmaligen Gebrauch was mache, sieht das rudimentärer aus...

------------------
      - 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

SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

WIN XP PRO SP2,
AMD 64 3200
2* 512MB DDR400
ATI 9600XT
AIP 2008 SP3

erstellt am: 25. Jun. 2010 15:40    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

Zitat:
Original erstellt von CADmium:
nee .... wie gesagt, ich hab das was eigenes ... aber der unter Mech sollte doch einen Versuch wert sein, oder ?


Ist er. Er wird mich einen Teil des Wochenendes kosten. Aber egal. Ich will dabei auch etwas lernen. :D

Zitat:
Original erstellt von CADmium:

Ist immer die Frage des Aufwandes und für wen man das macht ? Normalo-user hat am liebsten einen Dialog (wie oben gepostet) mit einem OK-Button und gut.

Wenn ich für mich selbst für den einmaligen Gebrauch was mache, sieht das rudimentärer aus...



Es sollen zum schluss mittels einer Anleitung auch, wie du so schön schreibst, Normalo-user arbeiten können.
DAUs sind ausgeschlossen!!!   


Gruß
SKYSURFER
p.s. ein schönes WE

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


Ex-Mitglied

erstellt am: 25. Jun. 2010 23:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

ein Ansatz zu Starten, allerdings wenig Fehlerhandling. Parameter sind in den CONST-Statements einstellbar.

Code:
Option Explicit

Const pDirName As String = "C:\TEMP"            'das Verzeichnis, dessen DWGs zu konvertieren sind
Const pDgnVersionStr As String = "V8"          'zu exportierendes DGN-Format, kann "V7" oder "V8" sein
Const pDgnUnitsStr As String = "HAUPTEINHEITEN" 'zu exportierende Einheiten, kann "HAUPTEINHEITEN" oder "UNTEREINHEITEN" sein
Const pDgnMappingStr As String = "STANDARD"    'Mappingeinrichtung, muss definiert sein, sonst läuft das Script nicht ab
Const pDgnSeedFile As String = "C:\Program Files\Autodesk\AutoCAD2011\UserDataCache\Template\V8-Metric-Seed3D.dgn"


Public Sub CmdExecuteMultipleDWGs()
  Dim tApp As AcadApplication
  Set tApp = ThisDrawing.Application
 
  Dim tFileName As String
  tFileName = Dir(pDirName & "\*.dwg")  'erste DWG-Datei
  Do While Len(tFileName) > 0
      If Not executeFile(tApp, pDirName & "\" & tFileName) Then
        Call MsgBox("Fehler bei Datei '" & tFileName & "'" & vbCrLf & "Script wird beendet", vbCritical)
        Exit Do
      End If
      tFileName = Dir                    'naechste DWG-Datei oder leer, wenn es die letzte war
  Loop
End Sub

Private Function executeFile(ByRef App As AcadApplication, ByVal FileName As String) As Boolean
  Dim tRetVal As Boolean
  On Error Resume Next
 
  Dim tDoc As AcadDocument
  Set tDoc = App.Documents.Open(FileName)
  If (Not (tDoc Is Nothing)) Then
      Dim tCmdStr As String
      tCmdStr = tCmdStr & "_-DGNEXPORT" & vbCr
      tCmdStr = tCmdStr & pDgnVersionStr & vbCr
      tCmdStr = tCmdStr & Left(FileName, Len(FileName) - 4) & ".dwg" & vbCr
      tCmdStr = tCmdStr & pDgnUnitsStr & vbCr
      tCmdStr = tCmdStr & pDgnMappingStr & vbCr
      tCmdStr = tCmdStr & pDgnSeedFile & vbCr
      Call tDoc.SendCommand(tCmdStr)
      Call tDoc.Close(False)
      If App.ActiveDocument.FullName = FileName Then
        'dann konnte das Doc nicht geschlossen werden, voraussichtlich ist
        '  mit dem Ablauf des Scripts dann was passiert
        tRetVal = False
      Else
        tRetVal = True
      End If
  Else
      tRetVal = False
  End If
 
  On Error GoTo 0
  executeFile = tRetVal
End Function



HTH, - alfred -

------------------
www.hollaus.at

SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

WIN XP PRO SP2,
AMD 64 3200
2* 512MB DDR400
ATI 9600XT
AIP 2008 SP3

erstellt am: 01. Jul. 2010 09:57    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,

sorry, dass ich mich erst jetzt melde. Vielen vielen Dank für das Macro.
Leider hat es bei mir nicht funktioniert. Aber der "Fehler" muss irgendwo bei bei:

Code:
If App.ActiveDocument.FullName = FileName Then

bzw den folgenden Zeilen sein, denn die Zeichnung wird im ACAD geladen.

Nachdem sich aber die Aufgabenstellung geändert hat, wird das wohl nichts mit dem Macro. Denn ich habe noch viele Referez-Dateien in dem gleichen Verzeichnis. Diese werden aber schon automatisch als DGN erzeugt. Somit müsste man Filtern, welche eine Haupt-DWG ist, und welche nur Referenz-DWG ist.


Gruß
SKYSURFER

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



Anzeige:Infos zum Werbeplatz >>

CADprofi Suite CAD APP für Mechanik, Elektro, Heizung, Lüftung und Klimatisierung (HLK)


Ex-Mitglied

erstellt am: 01. Jul. 2010 10:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

der Fehler kann zustandekommen, wenn keine Zeichnung geöffnet ist, ich habe es nur getestet, indem ich eine leere Zeichnung immer offen hatte.
Abhilfe: zuvor mit  Is Nothing  prüfen, ob App.ActiveDocument überhaupt was ist.


>> Denn ich habe noch viele Referez-Dateien in dem gleichen Verzeichnis

Na dann einen Filter, mit dem Du prüfst, ob Haupt oder Referenzzeichnung. Die Kriterien kenne ich aber nicht, hängt wohl von Eurer Struktur ab.

Viel Erfolg, - alfred -

------------------
www.hollaus.at

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