0
我的VBA代码应该把我的查询在MS Access(无头) 到细胞K17名为现有的Excel电子表格总计 。Excel文件更新,但没有任何变化:出口查询无头擅长
当我运行模块,Excel文件的属性下,最后修改时间没有得到更新,当我运行的模块。但是我没有在Excel电子表格中看到我的查询。
在我的代码的任何建议将高度赞赏。非常感谢!
Sub TransToXL()
Dim xlApp As Excel.Application
Dim xlWB As Excel.Workbook
Dim xlWS As Excel.Worksheet
Dim acRng As Variant
Dim xlRow As Integer
Dim qry As QueryDef
Dim rst As Recordset
Set xlApp = New Excel.Application
Set xlWB = xlApp.Workbooks.Open("C:\Users\MyName\Desktop\August 2017.xlsx")
Set xlWS = xlWB.Worksheets("Totals")
xlRow = (xlWS.Columns("K").End(xlDown).Row)
Set qry = CurrentDb.QueryDefs("DollarsSold")
Set rst = qry.OpenRecordset
Dim c As Integer
c = 11
xlRow = xlRow + 16
Do Until rst.EOF
For Each acRng In rst.Fields
xlWS.Cells(xlRow, c).Formula = acRng
c = c + 1
Next acRng
xlRow = xlRow + 1
c = 1
rst.MoveNext
If xlRow > 25 Then GoTo rq_Exit
Loop
rq_Exit:
rst.Close
Set rst = Nothing
Set xlWS = Nothing
xlWB.Close acSaveYes
Set xlWB = Nothing
xlApp.Quit
Set xlApp = Nothing
Exit Sub
End Sub
变量c是一个存储科拉姆数,其中c = 1表示列A,11将是K.在该代码中,我感到困惑我设置xlRow+16
的方式。 xlRow+16
,c = 11没有指出K17。有任何建议吗?谢谢!
请更具体和详细:你想acheive什么?什么不工作?错误讯息? – peakpeak
道歉,我的问题不是那么具体。我刚刚更新,仔细检查'xlWS.Cells'是否指向单元格K17 @peakpeak –
这是什么问题? – peakpeak