【发布时间】:2015-10-02 05:09:27
【问题描述】:
我在 Access 中有一个数据库,简而言之,就是一长串公司、他们销售的产品以及他们每个产品的财务销售额。我想写一些 VBA:
1.) 允许我将查询导出到 Excel。 2.) 每次运行查询时创建一个新工作表 3.) 格式化呈现的数据。
我似乎也不知道如何将查询中的数据粘贴到新工作表中。如果有好心人能帮助我,将不胜感激。
我知道这一切都是可能的,因为我已经对此进行了大量研究。但是我已经没有时间了,现在只需要弄清楚我哪里出错了。到目前为止,这是我所看到的基本内容:(Access VBA How to add new sheets to excel?)、(Formatting outputted Excel files from Access using VBA?)、(https://www.youtube.com/watch?v=9yDmhzv7nns)。
Sub Mysub()
Dim objexcel As Excel.Application
Dim wbexcel As Excel.Workbook
Dim wbExists As Boolean
Dim qdfQUERY2014sales As QueryDef
Dim rsQUERY2014sales As Recordset
Set qdfQUERY2014sales = CurrentDb.QueryDefs("QUERY2014sales")
Set rsQUERY2014sales = qdfQUERY2014sales.OpenRecordset()
Set objexcel = CreateObject("excel.Application")
On Error GoTo Openwb
wbExists = False
Set wbexcel = objexcel.Workbooks.Open("C:\Users\MORTBANKER\Documents\test.xls")
wbExists = True
Openwb:
On Error GoTo 0
If Not wbExists Then
Set wbexcel = objexcel.Workbooks.Add()
End If
CopyToWorkbook wbexcel
End Sub
Private Sub CopyToWorkbook(objWorkbook As Excel.Workbook)
Dim newWorksheet As Excel.Worksheet
Set newWorksheet = objWorkbook.Worksheets.Add()
With newWorksheet
.Range("A1") = rsQUERY2014sales
.columns("A:A").HorizontalAlignment = xlRight
.rows("1:1").Font.Bold = True
End With
'Copy stuff to the worksheet here'
End Sub
【问题讨论】:
标签: excel ms-access vba ms-access-2013