Access - sELECCIONAR REGISTROS PARA EXPORTAR¿COMO?

 
Vista:

sELECCIONAR REGISTROS PARA EXPORTAR¿COMO?

Publicado por Jose Luis (4 intervenciones) el 06/07/2004 20:59:35
Hola a tod@s:

Solicito de nuevo vuestra ayuda, a ver si me podeis hechar un cable.

He terminado un programa (bueno, una base de datos) en Access, para un amigo mio médico, para consultar registros, verlos, modificarlos, convertirlos a otros formatos y enviarlos por emilio.

En esta última parte es donde me atasco, porque tal como yo se lo habia hecho, convertia la base de datos a formato excel y el fichero lo enviaba directamente por emilio, pero al llevarselo, me dice que solo quiere enviar determinados registros.

Por ejemplo: actualmente la base de datos tiene según recuerdo, 1181 registros de pacientes. Lo que el quiere es que si modifica algun registro o añade uno nuevo, que se envie solo ese registro/s.

Yo pienso que la manera sería que pasara los datos a otra base de datos y posteriormente los convirtiera y enviara, pero .... ¿Como se hace eso (si es qie se puede hacer claro está), ya que si se modifica un registro, se modifica la base de datos entera. Como podría decirle que mandara a esa otras base de datos SOLO los registros nuevos o que se hayan modificado, por ejemplo desde una fecha, o incluso sobre la marcha.

Espero haberme explicado medianamente bien porque ya me estaba haciendo la pi... un lio yo mismo
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

sELECCIONAR REGISTROS PARA EXPORTAR¿COMO?

Publicado por Alejandro (4142 intervenciones) el 08/05/2023 23:04:53
¡Hola, Jpsé! Comprendo tu situación y puedo ayudarte a encontrar una solución. Si deseas enviar solo los registros modificados o agregados recientemente, puedes seguir estos pasos:

1. Agrega un campo adicional en tu tabla de pacientes para realizar un seguimiento de la fecha y hora de la última modificación o creación de cada registro. Puedes llamarlo "FechaModificacion" o algo similar.

2. En el formulario o macro que se utiliza para modificar o agregar registros, incluye código VBA para actualizar automáticamente el campo "FechaModificacion" con la fecha y hora actual cada vez que se realice una modificación o creación.

3. Crea una consulta en Access que seleccione los registros que tienen una fecha de modificación posterior a la fecha en la que deseas exportar los registros. Puedes utilizar la función `Now()` en la consulta para obtener la fecha y hora actual.

4. Utiliza el código VBA para exportar los registros seleccionados en la consulta a un archivo Excel o cualquier otro formato deseado.

Aquí tienes un ejemplo de código VBA para exportar los registros seleccionados en la consulta a un archivo Excel:

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
32
33
34
35
36
37
38
39
40
41
Private Sub btnExportar_Click()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim xlApp As Object
    Dim xlWB As Object
    Dim strSQL As String
    Dim strFileName As String
 
    ' Ruta y nombre de archivo de Excel para exportar
    strFileName = "C:\Ruta\archivo.xlsx"
 
    ' Consulta para seleccionar los registros modificados o agregados recientemente
    strSQL = "SELECT * FROM NombreTabla WHERE FechaModificacion > #" & Format(Now(), "yyyy/mm/dd hh:mm:ss") & "#"
 
    ' Abre la base de datos actual
    Set db = CurrentDb()
 
    ' Ejecuta la consulta y abre el recordset
    Set rs = db.OpenRecordset(strSQL)
 
    ' Crea una instancia de Excel y un nuevo libro
    Set xlApp = CreateObject("Excel.Application")
    Set xlWB = xlApp.Workbooks.Add
 
    ' Copia los datos del recordset al libro de Excel
    xlWB.Sheets(1).Range("A1").CopyFromRecordset rs
 
    ' Guarda y cierra el libro de Excel
    xlWB.SaveAs strFileName
    xlWB.Close
 
    ' Cierra la base de datos y libera los objetos
    rs.Close
    Set rs = Nothing
    Set xlWB = Nothing
    xlApp.Quit
    Set xlApp = Nothing
 
    ' Mensaje de confirmación
    MsgBox "Registros exportados correctamente.", vbInformation
End Sub

Recuerda reemplazar "NombreTabla" con el nombre de tu tabla y ajustar la ruta y el nombre del archivo de Excel en la variable "strFileName".

Espero que esto te ayude a exportar solo los registros modificados o agregados recientemente en tu base de datos de Access. ¡Buena suerte!
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