ciao ragazzi,

non posso crederci....ero in cerca su goole per capire come visualizzare una MsgBox su excel e mi sono ritrovato in un forum dove ho trovato la soluzione per chiudere i processi in background che permangono aperti....praticamente nonostante la chiusura dell'applicazione Excel o Word il processo restava aperto in background (lo si vede nel taskManager di windows)!!
dovrebbe fungere con qualsiasi app della famiglia OFFICE creata o aperta tramite VB.NET mettendoci i riferimenti asseconda se è excel, word o latro che sia!

vi posto il link al sito:
http://vbcity.com/forums/t/74226.aspx


per excel, io l'ho personalizzata così :
in una sub che ha come parametro l'applicazione excel in uso, la chiamo subito dopo che ho terminato l'iterazione con il documento office... (deve essere lanciata prima della chiusura del documento, altrimenti il riferimento all'applicazione excel va su NOTHING e non è più possibile effettuarla...magari se qualcuno sa come intervenire per quest'altro piccolo problema...?)

codice:
    Public Sub AzzeraProcessiExcel(ByVal ApplicazioneExcel As Excel.Application)
        ' controllo riferimento su Nothing
        If ApplicazioneExcel Is Nothing Then Return

        With ApplicazioneExcel
            For Each XlSheet As Excel.Worksheet In .Worksheets
                System.Runtime.InteropServices.Marshal.ReleaseComObject(XlSheet)
            Next

            For Each xlWBook As Excel.Workbook In .Workbooks
                System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWBook)
            Next

            System.Runtime.InteropServices.Marshal.ReleaseComObject(ApplicazioneExcel)
        End With

        ' Force the Garbage Collector (if desired)
        ' System.GC.Collect()
        ' Feedback

    End Sub

funziona perfettamente!! Adesso quando si chiude il documento (da codice o direttamente da Excel), il processo in taskmanager sparisce, quindi è chiso e la memoria liberata

non ne potevo più!!