Zobrazit plnou verzi příspěvku: Hromadná konverze do DGN

Juri_
05.08.2009, 09:40
Zdravím,dostal jsem za úkol převést několik set výkresů z DWG do DGN. K dispozici mám Autocad 2005 nebo Aucotad 2010. Převod ručně je v pořádku.Ale chtěl jsem to provést nějak automaticky. Lispem nevládnu, tak jsem si zde našel makro VBA z inventoru, které jsem upravil.Ale skončil jsem na části uložení. Tam mi vždy makro spadne s chybou -2... a v Autocad zatuhne výkres. Zkoušel jsem export i saveas a nic.Pokud by někdo dokázal napsat rutinu i v lispu bych bych moc vděčný.Děkuji předem za pomocMichal JuřicaMakro:Sub AllConvert()        Dim sFile As String, sInDir As String, sOutDir As String    Dim oDocs As AcadDocuments, oDoc As AcadDocument    Dim aktSelDoc As AcadSelectionSet        'Set oDocs = ThisDrawing.Application    Set oDocs = Application.Documents    'Define your source and target directories    sInDir = "D:\Práce\Projekty\20090805 ABB DE Převod DGN\"    sOutDir = "D:\Práce\Projekty\20090805 ABB DE Převod DGN\"    sFile = Dir(sInDir)    While (sFile <> "")        'Define the SOURCE format extension (IPT, IAM, IDW...)        If (Right(sFile, 3) = "dwg") Then            Debug.Print sFile            Set oDoc = oDocs.Open(sInDir & sFile, False)                        Set aktSelDoc = oDoc.ActiveSelectionSet                        'Define the TARGET format extension (IGS, DXF, WRL...)            'Call oDoc.Export(sOutDir & Left(sFile, Len(sFile) - 3), "dgn", aktSelDoc)            'Call oDoc.SaveAs(sOutDir & Left(sFile, Len(sFile) - 3), "dxf")            Call oDoc.Close        End If        sFile = Dir    WendEnd Sub

Vladimír Michl
05.08.2009, 09:44
Na to nemusíte nic programovat. Stačí spustit dávkový skript, kde bude jen otevření výkresu a jediný příkaz: [CMD]-DGNEXPORT[/CMD].

Seiner
05.08.2009, 09:52
A pokud se Vám nechce ten script tvořit ručně, použijte nejaký generátor scriptů. (Nic nevnucuji - taky z toho nic nemám, ale ten můj umí i podadresáře :-)
http://www2.chrudim.cz/seiner/programy/Davka.zip

Juri_
05.08.2009, 10:49
Děkuji tipy a pomoc.Problém úspěšně vyřešen a převod pěkně chodí.P.S. Už jsem myslel, že to nedám, ale stačilo si přečíst ctimne.txt a středník vše vyřešil.Ještě jednou děkujiMichal