Fermeture d'excel incorrect
Bonjour,
Dans le développement de mon application je manipule un dossier Excel à partie d'un Sub ... End Sub dont je fait l'appel par la bar de menu, au debut de mon Sub je fait l'ouverture d'excel et tout va bien, à la fin je libère la mémoire et tout semble bien se dérouler.
Mais, dans le processus de mon gerstionnaire de tâches mon excel reste ouvert tant que je n'ai pas arreté mon programme ce qui me cause des problèmes lors d'une ouverture par double clic sur le dossier.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Sub rechercheInfo()
'Ouverture d'excel
'______________________________________________________
Dim appExcel As Excel.Application
Dim WbExcel As Excel.Workbook
Dim WsExcel As Excel.Worksheet
appExcel = CreateObject("Excel.Application")
---Traitement---
WbExcel.Close()
appExcel.Quit()
appExcel = Nothing
WbExcel = Nothing
WsExcel = Nothing
End Sub |
Merci
Mario
C'est bizzard ce qui arrive ??
Depuis quelques jours je travail et fouille sur internet, pour trouver une bonne façon de fermer l'application correctement et voyez ce qui m'arrive.
Je me suis fait le code suivant qui fonctionne très bien
Code:
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
| Private Sub OuvrirToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OuvrirToolStripMenuItem.Click
Dim xlApp As Excel.Application
Dim xlWorkbook As Excel.Workbook
Dim xlWorksheet As Excel.Worksheet
xlApp = New Excel.Application
xlWorkbook = xlApp.Workbooks.Open("C:\Users\Mario\Documents\VBA\Excel\Bonjour.xls")
xlWorksheet = CType(xlApp.Worksheets("Feuil1"), Worksheet)
xlWorksheet.Cells(2, 2) = Now
xlWorkbook.Save()
MessageBox.Show("Cells2")
xlWorkbook.Close()
xlApp.Quit()
ReleaseObjet(xlApp)
ReleaseObjet(xlWorkbook)
ReleaseObjet(xlWorksheet)
End Sub
Private Sub ReleaseObjet(ByVal Obj As Object)
Try
System.Runtime.InteropServices.Marshal.ReleaseComObject(Obj)
Obj = Nothing
Catch ex As Exception
Obj = Nothing
Finally
GC.Collect()
End Try
End Sub |
et mon excel dans le processus disparait chaque fois. Mais, si j'essai d'ouvrir ma page excel à l'écran juste avant mon messagebox puis je le fait disparaitre juste après , Excel reste dans mon processus.
j'ai essayé :
Code:
xlWorksheet.Application.Visible = True
et
Code:
1 2 3
| xlWorksheet.Application.Visible = True
MessageBox.Show("Cells2")
xlWorksheet.Application.Visible = False |
quelqu'un sait pk?
merci