Como crear una tabla a través de una consulta de refere

Saludos y buen día
Lo que quiero es crear una tabla a partir de una consulta de referencias cruzadas que ya tengo
No importa que sea con código
Espero haberme explicado y de antemano muchas gracias

1 respuesta

Respuesta
1
Supongo que la consulta de referencias cruzadas se llama Consulta1.
Function creaTabla()
' Declaramos las variables
Dim db As Database
Dim tb As TableDef
Dim rs As Recordset
Dim fl As Field
Dim flNuevo As Field
Set db = CurrentDb
' Vemos si existe la tabla que vamos a crear, si existe la borramos
For Each tb In db.TableDefs
If tb.Name = "TablaNueva" Then
DoCmd.DeleteObject acTable, tb.Name
End If
Next tb
' Creamos la tabla nueva
Set tb = db.CreateTableDef("TablaNueva")
' Abrimos la consulta
Set rs = db.OpenRecordset("Consulta1")
' Como los campos devueltos por la consulta son variables (tanto en nº de campos como en nombre)
' tendremos que recorrerlos y añadirlos a la tabla con el nombre, el tipo y la longitud del devuelto por la consulta
For Each fl In rs.Fields
Set flNuevo = tb.CreateField(fl.Name, fl.Type, fl.Size)
tb.Fields.Append flNuevo
tb.Fields.Refresh
Next fl
' Añadimos la tabla a la BD
db.TableDefs.Append tb
db.TableDefs.Refresh
' Añadimos los registros devueltos por la consulta a la tabla
DoCmd.RunSQL "Insert into TablaNueva select * from consulta1"
End Function
Saludos y buen día
Fue muy acertada y excelente tu respuesta me fue de muchísima ayuda
Realmente de muchísima ayuda mil gracias
No se que haríamos sin ustedes los expertos
Hasta la próxima

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas