[英]Copy tables from access into excel spreadsheets
我有一個Excel 2010工作簿“驗證表”,我需要將表從Access 2010復制到其中,以便可以填充表單。 我有三個訪問表–日期,活動和項目–和五個excel工作表–原始日期,原始活動,原始項目,驗證和參數。 這些按鈕存儲在“參數”頁面上。
我想編寫一個VBA代碼,當選擇“獲取數據”按鈕時,它將把Access中表中的數據復制到相應的電子表格中。 然后,我希望在按“完成”按鈕時清除工作表。 我已經在網上四處尋找解決方案,但是到目前為止,我還沒有發現任何可行或有用的方法。
任何有關如何解決此問題的幫助或指示,將不勝感激。
這是我正在嘗試使用的代碼。 它在objDB.Execute處給我一個“找不到可安裝的ISAM”錯誤。
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
考慮將數據作為DAO.Recordset
打開,並使用Range對象的.CopyFromRecordset
將其復制到范圍中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.