Code valable dans une feuille mais pas dans un module

J'ai décidé de prendre le problème à bras le corps et de tenter une initiation au VBA.

Premier essai, premier problème.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

On Error Resume Next

If IsEmpty(ActiveCell.Value) Then

ActiveCell.Value = "X"

ElseIf ActiveCell.Value = "X" Then

ActiveCell.Value = ""

End If

Cancel = True

End Sub

Quand je place ce code dans une feuille, il marche parfaitement bien. Quand j'insers un module et que je le place dedans pour que cette macro fonctionne sur toutes les feuilles du classeur, ça ne marche pas. Why ?

Salut le forum

Un macro événementielle ne peut être déclenché si elle est dans un module,

il faut mettre la macro dans ThisWorkbook si on veut une action sur

toutes les feuilles du classeur.

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)

On Error Resume Next
If IsEmpty(ActiveCell.Value) Then
ActiveCell.Value = "X"
ElseIf ActiveCell.Value = "X" Then
ActiveCell.Value = ""
End If

Cancel = True
End Sub

Mytå

ben je viens de le faire et ça ne marche toujours pas !

Re le forum

Il faut aussi modifier l'événement déclencheur.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

par

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)

Mytå

Merci beaucoup ça y est ça fonctionne.

Rechercher des sujets similaires à "code valable feuille pas module"