Excel VBA - Double clique - VB/VBA/VBS - Programmation
Marsh Posté le 10-05-2006 à 22:29:17
Salut,
Pour que ton code marche, il faut que tu le mette dans l' objet "ThisWorkbook".
Marsh Posté le 11-05-2006 à 20:23:03
bonsoir,
Il faut mettre cette macro dans le module de la feuille concernée. (Alt + F11)
A+
Marsh Posté le 11-05-2006 à 21:08:37
Oui, ça marche.
Question supplémentaire :
Comment faire pour obtenir "Oui" avec un double-clique et "Non" avec un second double-clique
Toujours avec la même condition que la cellule soit vide au début
Marsh Posté le 11-05-2006 à 21:56:18
Tu remplaces "X" par "Oui" et "" par "Non"
Marsh Posté le 15-05-2006 à 15:38:20
Ca marche, mais une seule fois
la cellule vide passe à OUI en double-cliquant
passe à NON en re-double-cliquant
si on re-double-clique, il ne se passe plus rien.
Je souhaiterais qu'elle passe de OUI à NON et vice versa en double-cliquant.
Marsh Posté le 15-05-2006 à 15:47:38
c'est ton if isempty car après le premier click le contenu n'est plus vide
donc ca devrait marcher :
If IsEmpty(ActiveCell.Value) Then
ActiveCell.Value = "OUI"
Else
If ActiveCell.Value = "OUI" Then
ActiveCell.Value = "NON"
else
ActiveCell.Value = "OUI"
end if
End If
Marsh Posté le 15-05-2006 à 19:51:19
ReplyMarsh Posté le 15-05-2006 à 20:53:18
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If IsEmpty(ActiveCell.Value) Then
ActiveCell.Value = "OUI"
ElseIf ActiveCell.Value = "OUI" Then
ActiveCell.Value = "NON"
ElseIf ActiveCell.Value = "NON" Then
ActiveCell.Value = ""
End If
Cancel = True
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Select Case ActiveCell.Value
Case ""
ActiveCell.Value = "OUI"
Case "OUI"
ActiveCell.Value = "NON"
Case "NON"
ActiveCell.Value = ""
End Select
Cancel = True
End Sub
Marsh Posté le 16-05-2006 à 09:28:22
didieraucun a écrit : Ca marche .... mais la condition de la cellule vide ne fonctionne plus |
ma solution marche mais celle de kiki29 avec le select case est plus simple sauf que dans ton cas il te faut mette oui dans le cas ou le contenu de la cellule est NON, tu peut même utiliser ce code et même si l'utilisateur rentre une valeur dans la cellule le double click marchera encore :
Select Case ActiveCell.Value
Case "NON"
ActiveCell.Value = "OUI"
Case "OUI"
ActiveCell.Value = "NON"
Case Else
ActiveCell.Value = "OUI"
End Select
End Sub
Marsh Posté le 10-05-2006 à 21:14:56
Bonsoir à tous,
j'ai trouvé sur le net une macro sympa :
" Comment faire une macro qui mettrait un X dans une cellule vide avec un double clic et qui
enleverait ce X avec un nouveau double clic ?
A mettre dans le module de la feuille
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
Eric Jeanne, (N°1095) "
J'ai essayé de mettre cette macro dans mon fichier Excel mais ça ne marche pas ! [img]\"\[/img]
Pourriez vous m'aider pour me dire où est l'erreur. merci
Message édité par didieraucun le 10-05-2006 à 21:17:22