j'utilise un objet du type "Word.Application" (referencé dans mon projet),

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
Option Explicit
Dim Appli As Word.Application
Dim AppliOk As Boolean
 
Private Sub Form_Load()
On Error Resume Next
Set Appli = GetObject(, "Word.Application")
DoEvents
If Err.Number = 0 Then
  AppliOk = True
 Else
 On Error GoTo 0
 AppliOk = False
 MsgBox "pas bon"
End If
End Sub
 
Private Sub Form_Unload(Cancel As Integer)
If AppliOk = True Then Set Appli = Nothing: DoEvents
End
End Sub
Le probleme est que dans le gestionnaire des taches de windows, onglet "Processus", je m'apercois que le processus "winword.exe" n'ai pas dechargé par la ligne de commande, "If AppliOk = True Then Set Appli = Nothing: DoEvents" de la procedure Private Sub Form_Unload.
j'ai bien sûr verifié que ma variable AppliOk = True et que Set Appli = Nothing est executé.
Pourtant, a chaques nouveaux demarages du programme, une nouvelle ligne apparait dans le gestionnaire des taches de windows.
Ce qui expliquerait que pour chaques nouveaux lancements du programme, celui-ci met de plus en plus de temps a ce charger et a s'executer.
De plus je pense qu'au bout d'un certain nombre de lancement du programme, celui-ci va ce planter.

J'avais cru comprendre que pour decharger en memoire une variable objet il fallait la passer en Nothing.

Je doute de plus en plus de savoir programmer .......

Merci de votre aide