Access - Añadir datos a una tbla

 
Vista:

Añadir datos a una tbla

Publicado por Andy (1 intervención) el 08/03/2005 14:04:40
Tengo un filtro que obtengo seleccionando registros de una lista con selección múltiple en un formulario y sus datos los imprimo en un informe; hasta aquí todo bien. Lo que yo quisiera es que admás de poder imprimir estos datos se me añadieran a una tabla . ¿Cómo tendría que hacerlo?

Esta es la rutina que tengo:
Dim frm As Form
Dim ctl As CONTROL
Dim ctl2 As CONTROL
Dim varItm As Variant
Dim strCondicion As String
Dim i As Integer

strCondicion = "Almacén.[ID] in ("
i = 0
Set ctl = Me.Controls("lista2")
Set ctl2 = Me.Controls("Número")
For Each varItm In ctl.ItemsSelected
i = i + 1
ctl2 = ctl.ItemData(varItm)
strCondicion = strCondicion & ctl2
If i < ctl.ItemsSelected.Count Then
strCondicion = strCondicion & ","
End If
Next varItm
strCondicion = strCondicion & ")"
DoCmd.OpenReport "Informe", acPreview, , strCondicion
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

Agregar datos seleccionados en un informe a una tabla

Publicado por Alejandro (4142 intervenciones) el 29/05/2023 18:46:46
Para añadir los datos seleccionados en la lista a una tabla además de imprimirlos en un informe, puedes hacer lo siguiente:

1. Declara una variable para la tabla donde deseas agregar los datos seleccionados. Por ejemplo:

1
2
Dim tbl As DAO.Recordset
   Set tbl = CurrentDb.OpenRecordset("NombreTabla")

Asegúrate de reemplazar "NombreTabla" con el nombre de tu tabla.

2. Dentro del bucle `For Each`, después de la línea `ctl2 = ctl.ItemData(varItm)`, puedes agregar el código para agregar los datos a la tabla. Por ejemplo:

1
2
3
tbl.AddNew
   tbl("Campo1") = ctl2 ' Reemplaza "Campo1" con el nombre del campo correspondiente en tu tabla
   tbl.Update

Puedes repetir este bloque de código para cada campo que desees agregar a la tabla.

3. Continúa con la generación del informe como lo tienes actualmente:

1
DoCmd.OpenReport "Informe", acPreview, , strCondicion

4. Después de abrir el informe, cierra y libera la referencia a la tabla:

1
2
tbl.Close
   Set tbl = Nothing

De esta manera, los datos seleccionados en la lista se agregarán a la tabla antes de abrir el informe. Asegúrate de adaptar el código según los nombres de tus campos y tabla.

Espero que esto te ayude a lograr lo que deseas.
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