首页 文章

在Access vba中创建表并使用查询结果填充

提问于
浏览
2

我正在开发Access 2010数据库,需要一些帮助 .

我正在尝试创建一些将运行查询的vba代码,然后根据返回的记录创建和填充表 . 然后,我想根据查询中的值(公司名称)重命名表 .

我有构建的查询将从我的表返回不同的值,但我需要为结果中返回的每个公司创建一个单独的表 .

任何和所有建议都表示赞赏 .

1 回答

  • 1

    你确定为每家公司创建一个不同的表是一个好主意吗?我不推荐这个!

    好吧,假设你有一个名为QUERY的查询,它包含字段CompanyName并包含所有记录 . 你可以从这样的事情开始:

    Sub Export_Query()
      Dim rs As Recordset
    
      Set rs = CurrentDb.OpenRecordset("select distinct CompanyName from QUERY")
      While Not rs.EOF
        On Error Resume Next
        CurrentDb.Execute "DROP TABLE [" & rs("CompanyName") & "]"
        CurrentDb.Execute "SELECT QUERY.* INTO [" & rs("CompanyName") & "] FROM QUERY WHERE CompanyName=""" & rs("CompanyName") & """;"
        On Error GoTo 0
        rs.MoveNext
      Wend
    
      rs.Close
      Set rs = Nothing
    End Sub
    

    这只是一个想法...你应该添加更多错误检查代码,你还应该逃避公司名称或确保它不包含任何特殊字符 .

相关问题