Fermer 1 classeur en fermant l'autre et vice versa!

pacoako

XLDnaute Occasionnel
Bonjour à tous!

J'ai 2 fichiers excels. Le principal se nomme Agent Recouvrement.xls et l'autre Tableau.xls et j'essaie de trouver une façon de faire ferme le fichier Tableau lorsque Agent se ferme ou vice versa....

Ma technique semble fonctionner seulement lorsqu'on ferme les classeurs avec le "x" des classeurs, mais lorsqu'on utilise le gros "X" d'Excel le classeur Agent reste toujours ouvert... en fait on dirait que lorsque je "Run" une macro contenue dans le fichier Tableau à partir du fichier Agent, cette macro est exécuté mais l'évenement (Agent_BeforeClose) semble s'arrêter.

voici mon code

=========== FICHIER TABLEAU======================


Code:
Tableau.xls - MODULE 1
Public ClosedFromAgent As Boolean

Sub ForceClose()

ClosedFromAgent = True
ThisWorkbook.Close True

End Sub
Code:
Tableau.xls - ThisWorkbook

Private Sub Workbook_Open()

ClosedFromAgent = False

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

If ClosedFromAgent = True Then

    MsgBox "Agents a demandé de fermer Tableau"
    
    Sheets(2).EnableCalculation = True
    Sheets(2).PivotTables("Tableau croisé dynamique1").PivotCache.Refresh
    Sheets(2).Calculate
    Sheets(2).EnableCalculation = False

Else
    MsgBox "Tableau se ferme de lui-même"
    Application.Run "'Agents Recouvrement.xls'!ForceClose"
    Sheets(2).EnableCalculation = True
    Sheets(2).PivotTables("Tableau croisé dynamique1").PivotCache.Refresh
    Sheets(2).Calculate
    Sheets(2).EnableCalculation = False
    ThisWorkbook.Save
    ThisWorkbook.Saved = True
End If

End Sub=========== FICHIER AGENTS RECOUVREMENT======================

Code:
Agents Recouvrement.xls - MODULE1
Sub ForceClose()

ClosedFromTableau = True
ThisWorkbook.Close True

End Sub
Code:
Agents Recouvrement.xls - ThisWorkBook

Sub Workbook_Open()

ClosedFromTableau = False

end sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

If ClosedFromTableau = True Then
    MsgBox "Tableau a demandé de fermer Agent"
    Quitter
Else
    MsgBox "Agents se ferme de lui-même"
    Application.Run "'Tableau.xls'!ForceClose"
    Quitter
End If

End Sub


Merci pour votre temps!! A++ & bonne soirée!
 

Discussions similaires

Réponses
15
Affichages
1 K
Réponses
10
Affichages
678
Réponses
8
Affichages
666

Statistiques des forums

Discussions
312 305
Messages
2 087 080
Membres
103 457
dernier inscrit
fab2614