View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
TK TK is offline
external usenet poster
 
Posts: 177
Default Passing array from Access to Excel function

Dale:

The following is not exactly correct:

.... Excel
(XL2003) can
only tolerate 65536 rows of data.


I have not tested an array but if you wish to import a recordset
with more than 65536 records, Excel looks for the EOF, you do
however need to allow for the additional records over 65+K and
consider the amount of fields you wish to inport.

For example the following code will import 65k + records
with 3 field in col a b and c and the balance starting at d10

Worksheets("Sheet3").Range("A:A,C:C").CopyFromReco rdset rs
'/If more than 65,536 records you must add a second line
'/Starts at D10
Worksheets("Sheet3").Range("D10:f10000").CopyFromR ecordset rs

You may want to compare bringing in the records with
CopyFromRecordset vs an array. In my test Excel seems to
perfer the former.

Good Luck
TK


"Dale" wrote:

Wasn't sure if this was an access or excel question but here it goes:

Situation:
In an Access database (A2k) I have a recordset containing 85,000 records of
which
I want to pass an array to Excel to calculate the 90th percentile. Excel
(XL2003) can
only tolerate 65536 rows of data.

Question:
Can I split the data into two columns and pass both columns as an array to
Excel?
I'm not sure how would I reference the arguments for the function without
getting an invalid
arguments error if there are two columns?

Here's what I have for one column:
Result = appXL.Percentile((varArray()), 0.9)

Thanks for taking the time to help me out...
dale