我有代码可以遍历我选择的查询并将它们导出为标准的.xls文件。
我的问题是,如何将这些导出为共享工作簿?
一个正在工作的团队使用大约20个工作簿,他们手动将它们设置为共享,这样他们就可以同时访问它们。
目前,要输出,我运行命令:
DoCmd.OutputTo acQuery, Query, acFormatXLS, output_folder & DirectoryFriendlyQuery & ".xls", False, "", 0
答案 0 :(得分:0)
这似乎不是您的选择之一。我不知道怎么做。希望您可以在系统级别解决此问题(换句话说,将它们全部放在Access上)。
答案 1 :(得分:0)
您需要使用办公自动化。从VBA IDE(alt + F11)>>设置对Microsoft Excel对象库的引用。工具>>引用。
Dim xlApp As Excel.Application, wb As Excel.Workbook`
Set xlApp = CreateObject("Excel.Application")
Set wb = xlApp.Workbooks.Open(FileName:=myfile)
wb.SaveAs accessmode:=xlShared, FileName:=myfile
wb.Close savechanges:=false
Set sb = Nothing
xlApp.Quit`
通过不必保存文件两次(一个在访问中并再次在excel中)来使这个更快一点,你可以在内存中创建工作表。
Dim xlApp As Excel.Application, wb As Excel.Workbook, sh as excel.worksheet
Set xlApp = CreateObject("Excel.Application")
Set wb = xlApp.Workbooks.Open(FileName:=myfile)
set sh = wb.worksheets.add()
sh.cells(1,1).copyfromrecordset Data:=currentdb.openrecordset(name:="myquery")
wb.SaveAs accessmode:=xlShared, FileName:=myfile
wb.Close savechanges:=false
Set sb = Nothing
xlApp.Quit`