Questione : Come allontanarsi un'applicazione di Excel da VB.Net

Hello

I ha una piccola applicazione che mi allontano da un programma di VB.Net using i carichi di SHELL.

When Excel, esso di EXCEL funzionamenti del *automatically* una macro che le USCITE ad una macro di file.

The quindi dice Excel di rinunciare itself.

It sembra funzionare - perché PRODUCE al problema della lima correctly.

The è che continu aare ottenerlo ad una finestra di messaggio del Vista che dice che che “Microsoft Excel lo ha arrestato il funzionamento„ ed allora inizia “a cercare„ la causa del problema - finalmente dicendomi che il programma di Excel deve close.

But il programma di EXCEL ** ha fatto ** work.

So, come posso arrestano questa finestra di messaggio del Vista da comparire?

Thank you.
class= del

Risposta : Come allontanarsi un'applicazione di Excel da VB.Net


Ho scritto il seguente codice per un altro problema, io ho eliminato il roba inutile, io credo che questo fosse un senso molto migliore avvicinarsi all'apertura del libro di esercizi detto, quindi a chiuderlo, quindi rinunciando eccellere

notare la funzione riservata alla parte inferiore, inoltre questa presuppone che aggiungerete un riferimento per eccellere nel progetto ed anche per utilizzare le importazioni Excel = 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:
Oscurare il excelApp come Excel.Application
        Oscurare il WB come Excel.Workbook
        Oscurare il workbookName come stringa = “nome del libro di esercizi della prova„

        'Excel aperto alla condizione minimizzata
        excelApp = nuovi Excel.Application ()
        excelApp.Visible = CBool (Microsoft.Office.Core.MsoTriState.msoTrue)
        excelApp.WindowState = Excel.XlWindowState.xlMinimized

        'libro di esercizi aperto
        WB = excelApp.Workbooks.Open (workbookName, Microsoft.Office.Core.MsoTriState.msoFalse, _
                                     Microsoft.Office.Core.MsoTriState.msoFalse, _
                                     Microsoft.Office.Core.MsoTriState.msoTrue)
	
	WB.close
	excelApp.quit

        'la necessità di liberarli questi oggetti o di COM può rimanere aperta nei servizi correnti
        ReleaseObject (excelApp)
        ReleaseObject (WB)
        ReleaseObject (WS)
        ReleaseObject (obiettivo)

        excelApp = niente
        WB = niente
        La WS = niente
        obiettivo = niente
        'Erase targetArray

        'fare funzionare il collettore di immondizia
        GC.Collect ()

    ReleaseObject secondario riservato (ByVal o come oggetto)
        Prova
            System.Runtime.InteropServices.Marshal.ReleaseComObject (o)
        Fermo ex come eccezione
        Infine
            o = niente
        Prova di conclusione

    Sommergibile dell'estremità
Altre soluzioni  
 
programming4us programming4us