É possivel se criar uma tabela access partindo de uma consulta onde, as colunas da nova tabela seriam os dados apontados nos registros colhidos da consulta. Exemplo. Uma consulta gera 05 nomes diferentes de empresas cadastradas. Ao criar a nova tabela as colunas criadas seriam Empresa A, Empresa B, Empresa C, Empresa D.... A criação da tabela seria semelhante ao resultado de uma consulta referencia cruzada com o diferencial que ao ter um formulario poderia editar e inserir valores, coisa que na referencia cruzada não consegui (acho que não é possivel). O mestre JPaulo, uma vez disponibilizou um código de criação de tabela temporaria, mas não consegui identificar onde preciso fazer as adapatações. Transcrevo abaixo o código por ele fornecido à epoca.
Option Compare Database
Public Function cmdCriatemp_Click()
Dim rst As DAO.Recordset, _
strSQL As String, _
strSQL1 As String, _
dbs As Database
Set dbs = CurrentDb
dbs.Execute "CREATE TABLE temp " _
& "(ItensSC CHAR, Adicional CHAR, Unidades CHAR, Quantidade CHAR, " & "Valorestimado CHAR);"
strSQL1 = "INSERT INTO temp ( ItensSC, Adicional, Unidades, Quantidade, Valorestimado ) " & "SELECT * FROM Cns_testeitem;"
DoCmd.RunSQL strSQL1
dbs.TableDefs.Delete "temp"
End Function
Option Compare Database
Public Function cmdCriatemp_Click()
Dim rst As DAO.Recordset, _
strSQL As String, _
strSQL1 As String, _
dbs As Database
Set dbs = CurrentDb
dbs.Execute "CREATE TABLE temp " _
& "(ItensSC CHAR, Adicional CHAR, Unidades CHAR, Quantidade CHAR, " & "Valorestimado CHAR);"
strSQL1 = "INSERT INTO temp ( ItensSC, Adicional, Unidades, Quantidade, Valorestimado ) " & "SELECT * FROM Cns_testeitem;"
DoCmd.RunSQL strSQL1
dbs.TableDefs.Delete "temp"
End Function