Inserting SQL Stored Procedure Output into Excel spreadsheet range

I have created an Excel report the obtains selected information from a SQL stored procedures based on parameters sent from cell values in the spreadsheet.


I have a section that will report the list of values from the stored procedure and then sum the values at the bottom of the section.  The problem I am having is placing the output into the section and expand or shrink the area depending on the stored procedure output.  One time the list can be 10 records another maybe 5.

How can I achieve this?

Thanks

glen
GPSPOWAsked:
Who is Participating?
 
Glenn RayConnect With a Mentor Excel VBA DeveloperCommented:
If you're copying it via VBA, then it shouldn't be hard to note the size (row count) of the data to be copied and then adjust the size and position on the destination sheet.  As noted by Anthony, sample code might be helpful.

-Glenn
0
 
Glenn RayExcel VBA DeveloperCommented:
Maybe I'm missing something, but if you set up an connection to a SQLServer db with either a query or stored procedure, by default the results should be populating an Excel Table.  As such, the table size is dynamic, but you can also add a totals row that will always be at the bottom of the data table.

Either right-click on the table, then select "Table" and then "Totals Row", OR, click the Table Tools context menu tab, then select "Total Row" from the ribbon.  
Excel Table Totals Row optionYou can define the type of total summary also (ex., sum, average, count).

If there's more to this, please provide more information so we can help resolve.

Regards,
-Glenn
0
 
Anthony PerkinsCommented:
How can I achieve this?
Have you considered posting the relevant code here?
0
 
GPSPOWAuthor Commented:
I am trying to copy the results from the table into a range on a form in excel.


Thanks

Glen
0
 
GPSPOWAuthor Commented:
your solution was what I figured out.  I am in the process of creating the macro to resize the ranges based on the table rows.

thanks

Glen
0
All Courses

From novice to tech pro — start learning today.