Access - Escribir en Fichero, AYUDA

 
Vista:

Escribir en Fichero, AYUDA

Publicado por Inma (4 intervenciones) el 20/05/2004 10:20:47
Tengo un formulario en access lleno de cajas de texto, cuando acabo de rellenar todas las cajas de texto con datos quiero que al darle a un boton del formulario estos datos se escriban en un fichero de texto, Mifichero.txt. Como puedo hacer esto? No tengo ni idea de como hacerlo.

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

Escribir en Fichero, AYUDA

Publicado por Alejandro (4142 intervenciones) el 05/05/2023 20:29:55
Puedes hacerlo utilizando el objeto FileSystemObject de Visual Basic for Applications (VBA) en Access. Primero, debes agregar una referencia a la biblioteca de objetos de Scripting en tu proyecto de VBA. Para hacer esto, sigue los siguientes pasos:

1. Abre el editor de VBA en Access (puedes hacerlo presionando Alt + F11).
2. En el menú "Herramientas", selecciona "Referencias".
3. Desplázate hacia abajo y selecciona "Microsoft Scripting Runtime".
4. Haz clic en "Aceptar" para cerrar la ventana de referencias.

Luego, puedes agregar el siguiente código al evento del botón en tu formulario:

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
Private Sub CommandButton_Click()
   Dim fso As New FileSystemObject
   Dim file As TextStream
   Dim strPath As String
 
   'Ruta y nombre del archivo de texto
   strPath = "C:\Mifichero.txt"
 
   'Comprobar si el archivo ya existe, si es así lo abre en modo de escritura, si no lo crea
   If fso.FileExists(strPath) Then
      Set file = fso.OpenTextFile(strPath, ForAppending)
   Else
      Set file = fso.CreateTextFile(strPath)
   End If
 
   'Escribir los datos en el archivo de texto
   file.WriteLine Me.NombreDeLaCajaDeTexto1 & "," & Me.NombreDeLaCajaDeTexto2 & "," & Me.NombreDeLaCajaDeTexto3
 
   'Cerrar el archivo
   file.Close
 
   'Limpiar los datos del formulario
   Me.NombreDeLaCajaDeTexto1 = ""
   Me.NombreDeLaCajaDeTexto2 = ""
   Me.NombreDeLaCajaDeTexto3 = ""
End Sub

En el código anterior, debes cambiar "NombreDeLaCajaDeTexto1", "NombreDeLaCajaDeTexto2" y "NombreDeLaCajaDeTexto3" por los nombres de las cajas de texto en tu formulario. También puedes cambiar la ruta y el nombre del archivo de texto según tus necesidades.

Este código crea un objeto FileSystemObject, comprueba si el archivo ya existe y lo abre en modo de escritura o lo crea si no existe. Luego, escribe los datos de las cajas de texto en el archivo y lo cierra. Finalmente, limpia los datos del formulario para que puedas ingresar nuevos datos.
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
Imágen de perfil de Alejandro

Escribir en Fichero, AYUDA

Publicado por Alejandro (4142 intervenciones) el 05/05/2023 20:30:14
Puedes hacerlo utilizando el objeto FileSystemObject de Visual Basic for Applications (VBA) en Access. Primero, debes agregar una referencia a la biblioteca de objetos de Scripting en tu proyecto de VBA. Para hacer esto, sigue los siguientes pasos:

1. Abre el editor de VBA en Access (puedes hacerlo presionando Alt + F11).
2. En el menú "Herramientas", selecciona "Referencias".
3. Desplázate hacia abajo y selecciona "Microsoft Scripting Runtime".
4. Haz clic en "Aceptar" para cerrar la ventana de referencias.

Luego, puedes agregar el siguiente código al evento del botón en tu formulario:

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
Private Sub CommandButton_Click()
   Dim fso As New FileSystemObject
   Dim file As TextStream
   Dim strPath As String
 
   'Ruta y nombre del archivo de texto
   strPath = "C:\Mifichero.txt"
 
   'Comprobar si el archivo ya existe, si es así lo abre en modo de escritura, si no lo crea
   If fso.FileExists(strPath) Then
      Set file = fso.OpenTextFile(strPath, ForAppending)
   Else
      Set file = fso.CreateTextFile(strPath)
   End If
 
   'Escribir los datos en el archivo de texto
   file.WriteLine Me.NombreDeLaCajaDeTexto1 & "," & Me.NombreDeLaCajaDeTexto2 & "," & Me.NombreDeLaCajaDeTexto3
 
   'Cerrar el archivo
   file.Close
 
   'Limpiar los datos del formulario
   Me.NombreDeLaCajaDeTexto1 = ""
   Me.NombreDeLaCajaDeTexto2 = ""
   Me.NombreDeLaCajaDeTexto3 = ""
End Sub

En el código anterior, debes cambiar "NombreDeLaCajaDeTexto1", "NombreDeLaCajaDeTexto2" y "NombreDeLaCajaDeTexto3" por los nombres de las cajas de texto en tu formulario. También puedes cambiar la ruta y el nombre del archivo de texto según tus necesidades.

Este código crea un objeto FileSystemObject, comprueba si el archivo ya existe y lo abre en modo de escritura o lo crea si no existe. Luego, escribe los datos de las cajas de texto en el archivo y lo cierra. Finalmente, limpia los datos del formulario para que puedas ingresar nuevos datos.
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