' Código escrito originalmente por Juan M Afán de Ribera. ' Estás autorizado a utilizarlo dentro de una aplicación ' siempre que esta nota de autor permanezca inalterada. ' En el caso de querer publicarlo en una página Web, ' por favor, contactar con el autor en ' ' accessvba@ya.com ' ' Este código se brinda por cortesía de ' Juan M. Afán de Ribera ' Con este código pondrás en un santiamén todo el código de una base de datos en un fichero TXT, con el nombre del proyecto como nombre del fichero, y separado por nombres de módulos: Sub exportarCodigo() Dim obj As Object Dim archivo As String Dim titulo As String archivo = CurrentProject.Path & "\" & Application.VBE.ActiveVBProject.Name & ".txt" Open archivo For Append As #1 titulo = "Código del proyecto: " & UCase(Application.VBE.ActiveVBProject.Name) Print #1, titulo Print #1, String(Len(titulo), "-") Print #1, vbCrLf & vbCrLf For Each obj In Application.VBE.ActiveVBProject.VBComponents Print #1, UCase(obj.Name) Print #1, String(Len(obj.Name), "-") Print #1, vbCrLf & vbCrLf Print #1, obj.CodeModule.Lines(1, obj.CodeModule.CountOfLines) Print #1, vbCrLf & vbCrLf Next Close #1 End Sub Y de una Base externa: Sub exportarCodigoB() Dim obj As Object Dim archivo As String Dim titulo As String Dim ObjetoAccessExterno As Object ' Access.Application Set ObjetoAccessExterno = CreateObject("Access.Application") ObjetoAccessExterno.OpenCurrentDatabase CurrentProject.Path & "\baseexterna.mdb" archivo = CurrentProject.Path & "\" & Application.VBE.ActiveVBProject.Name & ".txt" Open archivo For Append As #1 titulo = "Código del proyecto: " & UCase(Application.VBE.ActiveVBProject.Name) Print #1, titulo Print #1, String(Len(titulo), "-") Print #1, vbCrLf & vbCrLf For Each obj In ObjetoAccessExterno.Application.VBE.ActiveVBProject.VBComponents Print #1, UCase(obj.Name) Print #1, String(Len(obj.Name), "-") Print #1, vbCrLf & vbCrLf Print #1, obj.CodeModule.Lines(1, obj.CodeModule.CountOfLines) Print #1, vbCrLf & vbCrLf Next Close #1 ObjetoAccessExterno.Quit End Sub