access中如何使用VBA将已有的recordset生成一个新表
把下面的过程放到任何一个模块中
Public Sub CreateTabel(rst As DAO.Recordset, TabelName As String)
Dim TS As TableDefs
Dim T As TableDef
Dim F As DAO.Field
Set TS = CurrentDb.TableDefs
Set T = New TableDef
rst.MoveFirst
For Each F In rst.Fields
T.Fields.Append T.CreateField(F.Name, F.Type, F.Size)
Next
T.Name = TabelName
TS.Append T
Set TS = Nothing
Set T = Nothing
Set F = Nothing
End Sub
具体的调用方式就是
CreateTabel recorset对象,表名
就可以在当前数据库中生成一个新表了
结构和recorset相同但没有数据,如果你要复制数据,一行SQL就搞定了