Jim Moss
jim.moss at jlmoss.net
Mon Aug 29 17:05:59 CDT 2005
Stephen, The following code does a copy from recordset: intMaxCol = rs1.Fields.Count If rs1.RecordCount > 0 Then rs1.MoveLast rs1.MoveFirst intMaxRow = rs1.RecordCount Set objXL = New Excel.Application With objXL .Visible = False Set objWkb = .Workbooks.Add Set objSht = objWkb.Worksheets(1) With objSht .Range(.Cells(2, 1), .Cells(intMaxRow, _ intMaxCol)).CopyFromRecordset rs1 End With End With End If Jim > In A2K I have built a temp table and am trying to then export it to a > spreadsheet using the following line of code: > > objXLRange.FormulaArray = objXLApp.Transpose(varResults) > > where 'Dim objXLApp As Excel.Application ' > and 'Dim objXLRange As Excel.Range' and has been defined precisely, > according to the size of the incoming data in the temp table, > and varResults is a 2-dimension array being the result of SELECT * FROM > tmpTable. The column count is fixed at 18 but the Row count is variable. > > This works well when the temp table has 303 rows or less. Over 303 rows, > and I get 'Error 13 Type Mismatch'. I have looked for corrupted data > coming in thru the query that creates the temp table, but after many hours > of experimentation it comes back to an apparent limit on the number of > Rows. > > I don't remember where I got the code from and I don't pretend to > understand the 'FormulaArray' property in Excel, but someone here might > have been down this track .... any takers? > > > Stephen Bond > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com >