Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming,microsoft.public.access.formscoding
|
|||
|
|||
![]()
I thought I would post this subroutine for outputting tables or queries
to Excel. My thanks for Jamie Collins for his response to a 2005 post. He showed an easy way to do this without having to use Excel objects. The instructions point out why this is an alternative to the docmd method. '--------------------------------------------------------------------------------------- ' Procedure : subDumpToExcel ' DateTime : 11/22/2006 11:03 ' Author : ws ' Copyright: Public Domain ' Purpose : This subroutine will export a table or query to Excel ' This offers more control than is possible with the DoCmd.OutputTo method ' DoCmd.OutputTo creates a new Excel file for each output (or overwrites an existing file) ' This option will add a new worksheet for the data output, if a worksheet with the name does not exist ' Inputs : Call the routine as subDumpToExcel [Query or Table to Output], [Output Path and File Name], [Worksheet Name] '--------------------------------------------------------------------------------------- ' Sub subDumpToExcel(strItemToOutput As String, strOutputPathAndFile As String, strWorksheetName As String) Dim strSQLToExecute As String 'On Error GoTo subDumpToExcel_Error strSQLToExecute = "SELECT [" & strItemToOutput & "].* INTO [Excel 8.0;Database=" & strOutputPathAndFile & "].[" & strItemToOutput & "] FROM " & strItemToOutput Debug.Print "strSQLToExecute is " & strSQLToExecute CurrentDb.Execute strSQLToExecute On Error GoTo 0 Exit Sub subDumpToExcel_Error: MsgBox "Error " & Err.Number & " (" & Err.Description & ") in the subDumpToExcel subroutine" End Sub |
#2
![]()
Posted to microsoft.public.excel.programming,microsoft.public.access.formscoding
|
|||
|
|||
![]() |
#3
![]()
Posted to microsoft.public.excel.programming,microsoft.public.access.formscoding
|
|||
|
|||
![]() Jamie Collins wrote: strSQLToExecute = "SELECT [" & strItemToOutput & "].* INTO [Excel 8.0;Database=" & strOutputPathAndFile & "].[" & strItemToOutput & "] FROM " & strItemToOutput Good to know it still works, even in Access2003. Sorry, I thought I was posting to one of the Access groups. For Excel users who missed my subtle point, see: You cannot change, add, or delete data in tables that are linked to an Excel workbook in Office Access 2003 or in Access 2002: http://support.microsoft.com/kb/904953/en-us "Because of legal issues**, Microsoft has disabled the functionality in Access 2003 and in Access 2002 that let users change the data in linked tables that point to a range in an Excel workbook." The same applies to Jet SQL code executed anywhere from with the Access UI (query object, VBA code, etc) that would directly update Excel data. ** For the story on the 'legal issues', see: Lawsuit forces users to update Microsoft Office: http://www.theregister.co.uk/2006/02..._infringement/ "Users of Microsoft's Office and Access packages have been told they will have to install updates as a result of a patent infringement dispute between Microsoft and a Guatemalan inventor that has cost the software firm almost $9 million in damages..." Jamie. -- |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Connection of Excel 07 pivot table to Access Query makes DB read o | Excel Discussion (Misc queries) | |||
Excel Pivot Table or Access Cross Tab Query Question | Excel Discussion (Misc queries) | |||
VBA - query an Access table - results in Excel | Excel Programming | |||
Linking parameter query from Access to pivot table in Excel | Excel Discussion (Misc queries) | |||
Linking a table in Access to a table in Excel using MS Query | Excel Programming |