我成功运行TransferSpreadsheet,将Access查询导出到指定位置的Excel文件:
Private Sub cmdExportQuery_Click()
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, "trndOTQry", _
"\\company.com\root\share\public\D2S\D2S\D2S_Scorecard\Trend OT.xls"
End Sub
鉴于这是一个共享文件,我希望打开一个对话框,允许用户选择他选择的任何保存目的地。我发现this link有一个引用this article的好解决方案。当我将此代码插入我的窗口时:
Private Sub cmdExportQuery_Click()
Dim strSaveAsFilter As String
Dim strSaveAsFileName As String
strFilter = ahtAddFilterItem(strSaveAsFilter, "Excel Files (*.xls)", "*.xls")
strSaveAsFileName = ahtCommonFileOpenSave( _
OpenFile:=False, _
Filter:=strSaveAsFilter, _
Flags:=ahtOFN_OVERWRITEPROMPT Or ahtOFN_READONLY)
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, "trndOTQry", _
strSaveAsFileName, , "-1", True
End Sub
我收到错误Compile Error: Sub or Function not defined
,它以蓝色突出显示ahtAddFilterItem
,并用黄色箭头突出显示黄色的Private Sub cmdExportQuery_Click()
。我尝试制作一个Public Sub,但是当我点击按钮时没有任何反应。在将此查询导出到Excel时,我该怎么做才能让用户选择保存目标?
答案 0 :(得分:1)
还应包含其他代码。点击这里:
http://access.mvps.org/access/api/api0001.htm
我也发现这可能对其他有同样错误的人有所帮助:
“您是否也获得了注释
中提到的其他代码注意:此代码仍需要Ken提供的GetOpenFileName例程 盖茨。请务必复制本文中的功能。