Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

macro évènementielle qui coince quand la feuille est protégée

2 réponses
Avatar
J
Bonjour à tous
le code suivant m'est très utile, mais il plante si la feuilles est
protégée. J'ai ajouté active.Sheet.Unprotect mais en vain.

Comment faire??
Merci pour l'aide
@+
J@@

'===================================
Dim chgt As Boolean

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
chgt = True
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
'* ici essai de déprotection
If chgt = True Then _
Sh.Range("R9").Value = "Dernière modif. de la feuille : " & Now
'erreur sur la ligne au dessus quand la feuille est protégée
chgt = False
End Sub
'===================================

2 réponses

Avatar
Rai
Bonsoir,

Tu n'es pas loin du but :
Sh.unprotect & Sh.protect
devraient te sauver la mise.

---
Dim chgt As Boolean
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
chgt = True
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Sh.Unprotect
If chgt = True Then _
Sh.Range("R9").Value = "Dernière modif. de la feuille : " & Now
'erreur sur la ligne au dessus quand la feuille est protégée
chgt = False
Sh.Protect
End Sub
---

Bonne continuation

Rai

Bonjour à tous
le code suivant m'est très utile, mais il plante si la feuilles est
protégée. J'ai ajouté active.Sheet.Unprotect mais en vain.

Comment faire??
Merci pour l'aide
@+
J@@

'================================== > Dim chgt As Boolean

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
chgt = True
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
'* ici essai de déprotection
If chgt = True Then _
Sh.Range("R9").Value = "Dernière modif. de la feuille : " & Now
'erreur sur la ligne au dessus quand la feuille est protégée
chgt = False
End Sub
'===================================


Avatar
J
Bonsoir Rai et merci
Voila qui marche!
Vraiment c'est cassepieds, il y a toujours un petit qq chose qui manque
dans mes bricolages !!
merci à toi, tout va bien maintenant :-)
@+
J@@
Bonsoir,

Tu n'es pas loin du but :
Sh.unprotect & Sh.protect
devraient te sauver la mise.

---
Dim chgt As Boolean
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
chgt = True
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Sh.Unprotect
If chgt = True Then _
Sh.Range("R9").Value = "Dernière modif. de la feuille : " & Now
'erreur sur la ligne au dessus quand la feuille est protégée
chgt = False
Sh.Protect
End Sub
---

Bonne continuation

Rai


Bonjour à tous
le code suivant m'est très utile, mais il plante si la feuilles est
protégée. J'ai ajouté active.Sheet.Unprotect mais en vain.

Comment faire??
Merci pour l'aide
@+
J@@

'================================== >> Dim chgt As Boolean

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As
Range)
chgt = True
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
'* ici essai de déprotection
If chgt = True Then _
Sh.Range("R9").Value = "Dernière modif. de la feuille : " & Now
'erreur sur la ligne au dessus quand la feuille est protégée
chgt = False
End Sub
'===================================