Fråga : Hur man kör en Excelapplikation från VB.Net

Hello

I har en liten EXCELapplikation som jag kör från ett VB.Net-program using Excel för SHELL.

When laddar, den *automatically* kör en makro som TILLVERKAR till en makro för file.

The då berättar Excel att avsluta itself.

It verkar för att fungera - därför att den TILLVERKAR till problemet för spara correctly.

The är att I-uppehället som får ett utsiktmeddelande boxas träffande mig att ”Microsoft Excel har stoppat arbetet” och det startar därefter ”att söka” för orsaka av det slutligen träffande problemet - mig att Excelprogramet måste close.

But EXCELprogramet ** gjorde ** work.

So, hur kan jag stoppar detta utsiktmeddelande boxas från synas?

Thank you.
" klar "

Svar : Hur man kör en Excelapplikation från VB.Net


Jag skrev efter kodifiera för ett annat problem, mig har tagit ut det onödigt stoppar, mig tror detta är mycket som var bättre långt att att närma sig att öppna den sagda arbetsboken, då bokslut det, då avsluta överträffa

märka det privat för att fungera längst ner, också detta antar att du ska tillfogar en hänvisa till för att överträffa i projektera och också för att använda importExcel = microsoft.blah.blah.blha

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
Dunkel excelApp som Excel.Application
        Dunkel WB som Excel.Workbook
        Dunkel workbookName som stränger = ”testar den kända arbetsboken”,

        'öppen Excel till minimerat statligt
        excelApp = nya Excel.Application ()
        excelApp.Visible = CBool (Microsoft.Office.Core.MsoTriState.msoTrue)
        excelApp.WindowState = Excel.XlWindowState.xlMinimized

        'öppen arbetsbok
        WB = excelApp.Workbooks.Open (workbookName, Microsoft.Office.Core.MsoTriState.msoFalse, _,
                                     Microsoft.Office.Core.MsoTriState.msoFalse _,
                                     Microsoft.Office.Core.MsoTriState.msoTrue)
	
	WB.close
	excelApp.quit

        'behov att frigöra dessa com anmärker, eller de kan återstå öppna i springet servar
        ReleaseObject (excelApp)
        ReleaseObject (WB)
        ReleaseObject (WS)
        ReleaseObject (uppsätta som mål),

        excelApp = ingenting
        WB = ingenting
        WS = ingenting
        uppsätta som mål = ingenting
        'Radera targetArray

        'kör avskrädesamlaren
        GC.Collect ()

    Privata underReleaseObject (den ByVal nollan som anmärker)
        Försök
            System.Runtime.InteropServices.Marshal.ReleaseComObject (nolla)
        Fånga före detta som undantag
        Slutligen
            nolla = ingenting
        Avsluta försök

    Avsluta suben
Andra lösningar  
 
programming4us programming4us