2011-03-20 2 views
4

나는 오토 캐드에서 몇몇 VBA 매크로를 개발 중이다. 내장 편집기는 폐기되었지만 .dvb 파일을 편집하는 더 좋은 방법을 찾을 수 없었습니다.오토 캐드를위한 더 나은 VBA 편집기

.dvb 파일 ... 다른 많은 소스 파일에서 포장, 지금까지 내가 AutoCAD를 그들을 압축을 풀 수있는 유일한 소프트웨어라고 생각 포함하지

이 작업을 수행 할 수 있도록 보인다 유일한 방법, 수동으로 .dvb의 모든 파일을 내보내는 것입니다. 하지만 30 개 정도의 파일이 있기 때문에 좋은 일을하는 것처럼 보이지 않습니다.

더 좋은 방법에 대한 아이디어가 있으십니까?

답변

5

이 코드를 사용하여 모든 파일을 내보낼 수 있습니다 위의 Export() 서브 루틴을 사용하여 코드를 수정 기분하지 않는 경우

Public Sub Export() 
    Dim vbe As vbe 
    Set vbe = ThisDrawing.Application.vbe 
    Dim comp As VBComponent 
    Dim outDir As String 
    outDir = "C:\\Temp\\VbaOutput" 
    If Dir(outDir, vbDirectory) = "" Then 
     MkDir outDir 
    End If 
    For Each comp In vbe.ActiveVBProject.VBComponents 
     Select Case comp.Type 
      Case vbext_ct_StdModule 
       comp.Export outDir & "\" & comp.Name & ".bas" 
      Case vbext_ct_Document, vbext_ct_ClassModule 
       comp.Export outDir & "\" & comp.Name & ".cls" 
      Case vbext_ct_MSForm 
       comp.Export outDir & "\" & comp.Name & ".frm" 
      Case Else 
       comp.Export outDir & "\" & comp.Name 
     End Select 
    Next comp 

    MsgBox "VBA files were exported to : " & outDir 
End Sub 
+0

핸디. 좋은 것. –

+0

이전에 같은 DVB에서 작업하는 여러 개발자가 편집 한 파일을 병합하는 작업을 한 적이 있습니다. 이 작업을 자동화하고 정의 된 경로로 완전한 내보내기를 수행하는 VBA 플러그인을 개발했습니다. 그것들은 힘든시기였다. 다행히도 이제 .NET으로 전환했습니다. – WizzardsApprentice

2

, 당신은 VBA2VB Form Converter를 사용하여 .dvb 파일에서 VBA 코드를 내보낼 수 있습니다 Leslie Lowe가 작성한 매크로 또는 Autodesk Developer Network의 Augusto Gonçalves가 작성한 modified version입니다. 이 매크로에는 간단한 VBA 양식을 VB6 양식으로 변환 할 수 있다는 보너스가 추가되었습니다. AutoCAD에서 VBA 지원을 중단 할 때 프로젝트를 .NET으로 이식 할 수있게하려면이 작업을 수행해야합니다. 수정 된 버전의 매크로는 마이그레이션을 수행하는 데 필요한 .vbproj ASCII 파일을 생성하므로 이전 버전의 Visual Basic 6 IDE 사본을 필요로하므로 특히 좋습니다.

FWIW, A .dvb 파일은 7-Zip과 같은 보관 유틸리티를 사용하여 열 수 있지만 파일 내용을보고 싶다면 컴파일 된 것으로 보이며 사람이 읽을 수있는 파일을 원할 경우 유용하지 않습니다. 내보낼 수있는 코드.

+0

수정 된 버전을 찾을 수 없지만 첫 번째 버전은 계속 사용할 수 있습니다. – orellabac