Riprendo questo mio post un po' vecchiotto perchè mi trovo a dover risolvere lo stesso problema, aggirato in passato con un "kill"...chiudere gli Excel.exe attivati dal programma, una volta terminata la lettura/scrittura...questa volta non posso "killarli" perchè i files excel risiedono su un server e chiuderei ogni processo Excel.exe, anche quelli utilizzati da altri utenti in rete che non interagiscono con il software che sto realizzando...vi allego un esempio di codice che ricalca la linea che sto seguendo:
codice:
Public Class Form2
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim XLS_C3 As New Microsoft.Office.Interop.Excel.Application
XLS_C3.Workbooks.Open("C:\Cartel3")
XLS_C3.Worksheets(1).Select()
XLS_C3.Cells(1, 20).value = "Ciao"
XLS_C3.ActiveWorkbook.Save()
XLS_C3.Workbooks.Close()
XLS_C3.Quit()
NAR(XLS_C3)
End Sub
Private Sub NAR(ByVal o As Object)
Try
System.Runtime.InteropServices.Marshal.ReleaseComObject(o)
Catch ex As Exception
Finally
o = Nothing
End Try
End Sub
End Class