Automation error - The object invoked has disconnected from its clients
Bonjour à tous,
J'ai un petit problème persistant lors de l'éxecution d'une macro...
Voici la situation :
J'ai un ensemble de macros qui vont ouvrir un (autre) classeur et vont travailler dedans.
A la fin, la macro principale est sensée fermer ce classeur en le sauvegardant...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| Public MonClasseurCible As Workbook
Sub Main_Sub()
Call Ouvrir_Classeur_Cible
Set MonClasseurCible = Application.ActiveWorkbook
Main_Form.Show ' tout le code de modification se trouve dans Private Sub UserForm_Activate()
' Permet de garder une pop-up à l'ecran qui décrit les modifs au fur et à mesure
Set MonClasseurCible = Nothing
ActiveWorkbook.Close True
End Sub |
Mais, arrivé ligne 14, j'obtient une Pop-up avec ce message :
Citation:
Run-time '-2147417848(80010108)'
Automation error
The object invoked has disconnected from its clients
Puis Excel bugg et l'histoire se termine par un redémarrage d'Excel (si je ne clic pas sur "Restart the program" ; dans quel cas c'est un redémarrage complet du PC ^^)
Il faut savoir que j'ai modifié ma façon d'activer le classeur cible (avant quoi çà marchait) car je pensais que çà serait plus propre ; je vous laisse juger pas vous même :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Public MonClasseurCible As String
'est devenu
Public MonClasseurCible As Workbook
Workbooks(MonClasseurCible).Activate
'est devenu
MonClasseurCible.Activate
Workbooks(MonClasseurCible).Close True
'est devenu
MonClasseurCible.Close True
'puis enfin
ActiveWorkbook.Close True |
Si quelqu'un avait une solution à mon problème, je suis preneur! =)