Export data from vb.net to Excel, error: Select method of Range class failed

I'm currently making a vb.net program that will run several queries, and the results of each will automatically be put into worksheets in a new Excel workbook (i.e. one set of results will go into a new worksheet, the next set will go into a different worksheet, etc.).

I'm now trying to iterate though each of these worksheets and make formatting changes to them. The problem I'm having is related to Freezing Panes.  My original idea to perform the freeze was to manually select a cell in the row I want to freeze (i.e. Range("A8").select), and then use "Application.ActiveWindow.FreezePanes = true".  Whats interesting is that this does work, but only for the first worksheet in my workbook.  As soon as my program tries to select cell "A8" on any other sheet, it throws an error.

I've also tried doing this (oSheet is the current worksheet I'm iterating through):
"oSheet.Range("A8").Application.ActiveWindow.FreezePanes = true".

This doesn't throw an error (I'm not selecting a cell, technically), but it only freezes the panes on the first worksheet again. This is peculiar, because I am able to make other formatting changes (borders, fonts, change text in cells, page setups, etc.) to every other worksheet using my current method.


This is the code for applying the style changes to each worksheet (the applymacro function does all of the work). 
 
For counter = 0 To SheetTitles.Count - 1
    stdSheet = CType(xlSheets.Item(counter + 1), Excel.Worksheet)
    stdSheet.Name = SheetTitles((CountOfSheetsNeeded - 1) - counter)
    xlCells = stdSheet.Cells
    GenerateExcelFile(dsHolder((CountOfSheetsNeeded - 1) -counter).tables(0), xlCells) 'Fill in the data
    ApplyMacro(stdSheet)
 
Next
 
ApplyMacro header and line I'm getting an error on:
 
Private Sub ApplyMacro (ByVal oSheet as Excel.Worksheet)
   oSheet.Range("A8").Select()
End Sub

Open in new window

LVL 2
jacksonm1234Asked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
jacksonm1234Connect With a Mentor Author Commented:
I figured it out. All I had to do was call the Activate() method on each sheet I was iterating through.

Thanks to everyone who helped...oh wait....
0
 
jacksonm1234Author Commented:
Any help? Anyone? Anyone?
0
All Courses

From novice to tech pro — start learning today.