2012-04-14 28 views
0

下面是使新Excel工作的代码,但我需要代码在每次单击Access 2007控件按钮时在同一Excel 2007工作簿中创建新工作SHEET。 单击控制按钮需要打开Access查询并创建Excel工作工作表打开 Excel书籍/工作表。 Excel的工作簿必须是宏启用工作簿.XLSM格式现有Access 2007宏的代码修改 - 旨在创建和(从Access中)打开现有Excel 2007工作簿中的新Excel工作表?

' Command104ContrDonatWeekly_Click 
' 
'------------------------------------------------------------ 
Private Sub Command104ContrDonatWeekly_Click() 
On Error GoTo Command104ContrDonatWeekly_Click_Err 

    DoCmd.OpenQuery "Contributors Who Donated in Past Week", acViewNormal, acEdit 
    DoCmd.OutputTo acOutputQuery, "Contributors Who Donated in Past Week", "ExcelWorkbook(*.xlsx)", "C:\Users\Michael1\Desktop\KSN\DistributionListWeekly.xlsx", True, "", 0, acExportQualityScreen 


Command104ContrDonatWeekly_Click_Exit: 
    Exit Sub 

Command104ContrDonatWeekly_Click_Err: 
    MsgBox Error$ 
    Resume Command104ContrDonatWeekly_Click_Exit 

End Sub 

回答

0

您可以使用TransferSpreadsheet的:

XLFile = "C:\Docs\MyXLFile.xls" 
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, _ 
    "MyTableOrQuery", XLFile, True, "Sheet2" 

FollowHyperlink XLFile 

''OR 

Shell "Excel.exe " & xlfile, vbNormalFocus 
+0

的TransferSpreadsheet方法的工作,但你有一些代码,也将**开放** Excel工作簿? – MichaelN 2012-04-15 09:55:30

+0

我在一种方法中添加了一个注释。 – Fionnuala 2012-04-15 20:38:18

+0

谢谢,它的工作原理,除了一个问题是,我收到一条消息,Excel已停止工作,并且当我选择“检查解决方案的oneline并关闭该程序”选项时,新的Microsoft Office弹出警告关于病毒和信任并询问我是否希望打开Excel文件,当单击“确定”时打开Excel文件并将查询数据成功导入到新创建的“工作表2”中。你有办法克服这个问题吗? – MichaelN 2012-04-16 00:36:51

相关问题