1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
Sub CreationTable(NomRequete As String, NomTable As String)
Dim db As DAO.Database, ta As TableDef, q As QueryDef, f As Field
Dim nb As Long, i As Long
Set db = CurrentDb
If ExisteTable(NomTable) Then DoCmd.DeleteObject acTable, NomTable
Set q = db.QueryDefs(NomRequete)
nb = q.Fields.Count - 1
Set ta = db.CreateTableDef(NomTable)
For i = 0 To nb
ta.Fields.Append ta.CreateField(q.Fields(i).Name, dbText, 80)
Next i
db.TableDefs.Append ta
DoCmd.RunSQL "INSERT INTO " & NomTable & " SELECT [" & NomRequete & "].* FROM [" & NomRequete & "];"
End Sub
Function ExisteTable(s As String) As Boolean
On Error GoTo erreur
ExisteTable = (CurrentDb.TableDefs(s).Name = s)
Exit Function
erreur:
End Function |
Partager