将表从访问复制到Excel电子表格中

时间:2014-07-17 00:06:10

标签: excel vba excel-vba ms-access-2010 excel-2010

我有一个excel 2010工作簿,验证表单,我需要将表格从Access 2010复制到我可以填充表单。我有三个访问表 - 日期,活动和项目 - 和五个excel表 - 原始日期,原始活动,原始项目,验证和参数。按钮存储在参数页面上。

我想编写一个VBA代码,当选择了一个按钮Get Data时,它会将Access中表格中的数据复制到相应的电子表格中。然后,我希望在按下完成按钮时清除工作表。我已经在网上寻找解决方案,但到目前为止我还没有发现任何有效或有帮助的东西。

非常感谢任何有关如何处理此问题的帮助或指示。

这是我尝试使用的代码。它让我找不到可安装的ISAM' objDB.Execute出错。

Unload ParameterMenu
formWait.Show

'Save workbook
ActiveWorkbook.Save

Dim strExcelFile As String
Dim strWorksheet As String
Dim strDB As String
Dim strTable As String
Dim objDB As Database

strExcelFile = "X:\Verification Form.xlsm"
strWorksheet = "RawDates"
strDB = "X:\Tables.accdb"
strTable = "Dates"

Set objDB = OpenDatabase(strDB)

'If excel file already exists, you can delete it here
'If Dir(strExcelFile) <> "" Then Kill strExcelFile

objDB.Execute _
  "SELECT * INTO [Excel 14.0;DATABASE=" & strExcelFile & _
   "].[" & strWorksheet & "] FROM " & "[" & strTable & "]"

objDB.Close
Set objDB = Nothing

Unload formWait
FinishDialog.Show

End Sub

1 个答案:

答案 0 :(得分:2)

查看以DAO.Recordset打开数据并使用Range对象的.CopyFromRecordset将其复制到范围。

相关问题