Access - Pasar codigo a txt

 
Vista:

Pasar codigo a txt

Publicado por FIoopy (1 intervención) el 30/08/2007 11:35:05
Buenas,

Tengo el siguiente problema.

Quiero pasar todo el código de access a un .txt. Para ello al clicar sobre un modulo me aparece con el boton derecho la opcion guardar como o exportar... y me pasa el codigo a un .txt. Hasta aquí bien, pero esto hay que hacerlo uno a uno y es una tarea costosa. Me gustaría hacer una rutina donde vaya recorriendo por cada formulario, cada informe y cada módulo y el código lo vaya incorporando en un ÚNICO .txt.

Gracias por adelantado.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Exportar todo el código a un único archivo .txt

Publicado por Alejandro (4142 intervenciones) el 18/08/2023 16:16:18
Para automatizar la tarea de exportar todo el código de Access a un único archivo .txt, puedes seguir estos pasos:

1. Crear un nuevo módulo:
Abre tu base de datos de Access y crea un nuevo módulo. Puedes hacerlo desde la pestaña "Crear" y seleccionando "Módulo".

2. Agregar el código de exportación:
En el nuevo módulo, agrega el siguiente código VBA para exportar el código de todos los formularios, informes y módulos a un único archivo .txt:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Sub ExportarCodigo()
    Dim db As DAO.Database
    Dim obj As AccessObject
    Dim strCodigo As String
    Dim strArchivo As String
    Dim i As Integer
 
    ' Cambia la ruta y nombre del archivo de destino
    strArchivo = "C:\Ruta\Archivo.txt"
 
    ' Inicializar el objeto de base de datos
    Set db = CurrentDb
 
    ' Recorrer todos los objetos de Access
    For Each obj In db.Containers("Databases").Documents
        If obj.IsLoaded = True Then
            DoCmd.Close acForm, obj.Name
        End If
 
        If obj.Type = acModule Or obj.Type = acForm Or obj.Type = acReport Then
            strCodigo = strCodigo & vbCrLf & "=== " & obj.Name & " ===" & vbCrLf & vbCrLf & obj.Module.Text
        End If
    Next obj
 
    ' Crear o sobrescribir el archivo de destino con el código recopilado
    Open strArchivo For Output As #1
    Print #1, strCodigo
    Close #1
 
    Set db = Nothing
End Sub

3. Ejecutar la rutina:
Cierra todos los objetos de Access (formularios, informes, módulos) y luego ejecuta la rutina. Esto se puede hacer presionando F5 en el módulo donde agregaste el código.

4. Revisar el archivo .txt:
Una vez finalizada la ejecución, verifica el archivo .txt especificado en la variable `strArchivo` para asegurarte de que el código se haya exportado correctamente.

5. Nota importante:
Antes de ejecutar cualquier rutina VBA, es recomendable hacer una copia de seguridad de tu base de datos para evitar la pérdida accidental de datos.

Con esta rutina, podrás exportar automáticamente todo el código de tus formularios, informes y módulos a un único archivo .txt, lo que te ahorrará tiempo y esfuerzo. Recuerda personalizar la ruta y el nombre del archivo de destino según tus necesidades.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar