Bonjour,
j'ai un souci avec la fermeture du processus Excel, appelé depuis Access.

La première fois que j'exécute ce code, le processus Excel.exe ne se ferme plus!! Par contre, toute les autres fois oui!!
Une autre chose étrange c'est que si j'appelle openFileReanOnly et closeNOTSaveFile toute de suite derrière il n'y a pas de soucis... Dans le code *read file* je ne fais rien d'autre que lire le contenu d'un sheet...


Voilà mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Public appExcel As Excel.Application   'Application Excel
Public wb As Excel.Workbook            'Classeur Excel
 
Public Sub openFileReanOnly(newFile As String) 
    If (appExcel Is Nothing) Then 
        Set appExcel = CreateObject("Excel.Application")    'Open Excel Application 
    Else 
        MsgBox ("appExcel is still running!") 
        Exit Sub 
    End If 
    If (wb Is Nothing) Then 
        Set wb = appExcel.Workbooks.Open(newFile, True, True) 'Open Excel File 
    Else 
        MsgBox ("an Excel file is Still Open!") 
        Exit Sub 
    End If 
End Sub 
 
....... 
read file 
.... 
 
Public Sub closeNOTSaveFile() 
    If Not (wb Is Nothing) Then 
        wb.Close False 
    End If 
    If Not (appExcel Is Nothing) Then 
        appExcel.Quit 
    End If 
    Set wb = Nothing 
    Set appExcel = Nothing 
End Sub
Pourquoi le processus reste ouvert Uniquement pour le premier appelle? Je passe bien par "appExcel.Quit" et "Set appExcel = Nothing" mais ils n'ont aucun effet...

Merci pour tout correction ou idée de débogage..