Advertisement

05.22.2008 at 10:32AM PDT, ID: 23425250
[x]
Attachment Details
[x]
The Solution Rating System

With so many solutions, how can you tell which solutions are most likely to help you and which ones are not? To provide you with a tool to use, we rate our solutions based on various elements that most accurately determine if a solution is a quality solution. To explain what factors affect the solution rating, here are the elements we take into consideration when formulating our solution rating.

  • The Grade of the Solution
  • The Zone Rank of the Expert Providing the Solution
  • The Number of Author and Expert Comments
  • The Number of Experts Contributing
  • The Feedback of the Community

Your Input Matters
Because of the way the system is set up, the most important variable in this equation is you. As a member of Experts Exchange, you are able to cast your vote on the quality of the solutions in regard to how complete, accurate, helpful and easy to understand each solution is. When you provide your feedback, each rating is adjusted accordingly. So, if you see a solution that has a poor rating that you think is a good solution, let us know by rating it. As you do, the rating will be adjusted and will become more accurate for other members of our site.

If you have any suggestions that you would like to make for our rating system, please ask a question in the Suggestions Zone of Community Support.

Thank you!

9.9

Excel processes kept running

Asked by Mafalda in Microsoft Visual Basic.Net

Tags: , , ,

I have an application that creates, sets values and formats worksheets in an excel workbook.
The application works fine.
I post hereunder some code (manually typed) showing how I access the worksheets.
I have many routines accessing different/same worksheets.
These routines are activated separately from a menu.
The real code includes exception handling and recovery but I didnt include those parts for clarity.
The problem is that once one of these routines ends the excel process is not freed and stays in memory!
Meaning that while the application is still working I have many Excel processes running consuming memory.
Each time the user activates one of these routines I have another Excel process in memory.
These processes are removed from memory only when I close my application.

Of course i can use one object to create the Excel Application and use it to open the workbooks and worksheets but I want to understand what I am doing wrong here where each subroutine opens her own Excel Application and "supposely" closes it.

    Imports Excel

    Dim xlApp As Global.Excel.Application
    Dim xlWkb As Global.Excel.Workbook
    Dim report As Worksheet

    'Create the excel application
    xlApp = CreateObject("Excel.Application")

     'Add the workbook to the excel application
     xlWkb = xlApp.Workbooks.Open("C:\MyFile.xls")
 
     report = xlWkb.Worksheets("Sheet1")

    With report
       <... excel formating and value assignments code here >
    End With

    xlWkb.Save()
    xlWkb.Close()
    xlApp.Quit()Start Free Trial
[+][-]05.22.2008 at 11:14AM PDT, ID: 21626212

At Experts Exchange, members can ask their questions to thousands of technology professionals, also known as Experts. Experts compete and collaborate to answer those questions by leaving comments like this one.

Start your 7-day free trial to view this Expert Comment or ask the Experts your question.

 
[+][-]05.22.2008 at 11:15AM PDT, ID: 21626221

View this solution now by starting your 7-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

 

About this solution

Zone: Microsoft Visual Basic.Net
Tags: Microsoft, VB.NET, 2005, Excel
Sign Up Now!
Solution Provided By: jpaulino
Participating Experts: 2
Solution Grade: A
 
 
 
Loading Advertisement...
20080716-EE-VQP-32 / EE_QW_2_20070628