Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim Feuille
Dim i%
Dim WS As Worksheet
If Flag = True Then Flag = False: Exit Sub
Feuille = ActiveSheet.Name
If Application.Calculation = xlCalculationManual And Feuille <> "Données" Then
Flag = True
On Error Resume Next
For Each WS In Worksheets(Array(Feuille, "H" & Feuille, "B" & Feuille, "Bilan"))
With WS
.Unprotect PW
.Calculate
Worksheets(Array(Feuille, "H" & Feuille, "B" & Feuille, "Bilan")).RefreshAll
.Protect PW
End With
Next WS
Flag = False
End If
End Sub