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

Une croix dans une cellule par un double clic

8 réponses
Avatar
Cara_Dom
Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une croix dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse

8 réponses

Avatar
anonymousA
Bonjour,

mets cette procédure dans le module Thisworkbook du projet VBA. A partir
de là, et quelle que soit la feuille de ce classeur, la macro se
déclenchera à chaque fois que tu double cliqueras dans une cellule.

A+


Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une croix dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse




Avatar
Jacky
Bonjour

Alt+F11
Dans la fenêtre VBA project, (en principe en haut à gauche) double clic sur
la feuille concernée
Dans la fenêtre de droite coller le code
Retour sur la feuille est double clique dans une cellule
ou
dans le ThisWorkbook pour être valable sur toutes les feuilles en modifiant
la 1ère ligne
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target
As Range, Cancel As Boolean)
--
Salutations
JJ

"Cara_Dom" a écrit dans le message de news:

Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une croix dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse




Avatar
Cara_Dom
Merci à vous tous ça marche.
Maintenant si je veux le faire par simple clic sur un endroit défini de la
feuille comment faire?
Merci
"Jacky" a écrit dans le message de news:
%
Bonjour

Alt+F11
Dans la fenêtre VBA project, (en principe en haut à gauche) double clic
sur la feuille concernée
Dans la fenêtre de droite coller le code
Retour sur la feuille est double clique dans une cellule
ou
dans le ThisWorkbook pour être valable sur toutes les feuilles en
modifiant la 1ère ligne
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal
Target As Range, Cancel As Boolean)
--
Salutations
JJ

"Cara_Dom" a écrit dans le message de news:

Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une croix dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse








Avatar
anonymousA
re, dans le même module de Thisworkbook

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
Target As Range)
On Error Resume Next
If IsEmpty(ActiveCell.Value) Then
ActiveCell.Value = "X"
ElseIf ActiveCell.Value = "X" Then
ActiveCell.Value = ""
End If

End Sub

A+

Merci à vous tous ça marche.
Maintenant si je veux le faire par simple clic sur un endroit défini de la
feuille comment faire?
Merci
"Jacky" a écrit dans le message de news:
%
Bonjour

Alt+F11
Dans la fenêtre VBA project, (en principe en haut à gauche) double clic
sur la feuille concernée
Dans la fenêtre de droite coller le code
Retour sur la feuille est double clique dans une cellule
ou
dans le ThisWorkbook pour être valable sur toutes les feuilles en
modifiant la 1ère ligne
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal
Target As Range, Cancel As Boolean)
--
Salutations
JJ

"Cara_Dom" a écrit dans le message de news:

Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une croix dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse











Avatar
JB
Bonjour,

Sur le champ A1:B6

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([A1:B6], Target) Is Nothing And Target.Count = 1
Then
Application.EnableEvents = False
If Target = "" Then
Target = "X"
Else
Target = ""
End If
Application.EnableEvents = True
End If
End Sub

JB

On 27 jan, 11:59, "Cara_Dom" wrote:
Merci à vous tous ça marche.
Maintenant si je veux le faire par simple clic sur un endroit défini de la
feuille comment faire?
Merci
"Jacky" a écrit dans le message de news:
%



Bonjour

Alt+F11
Dans la fenêtre VBA project, (en principe en haut à gauche) double clic
sur la feuille concernée
Dans la fenêtre de droite coller le code
Retour sur la feuille est double clique dans une cellule
ou
dans le ThisWorkbook pour être valable sur toutes les feuilles en
modifiant la 1ère ligne
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal
Target As Range, Cancel As Boolean)
--
Salutations
JJ

"Cara_Dom" a écrit dans le message de new s:

Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une cro ix dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse- Masquer le texte des messages précédents - - Afficher le texte des messages précédents -






Avatar
Cara_Dom
Bonjour,

ça marche parfaitement.
Maintenant je voudrais pouvoir metre une croix sur des colonnes qui ne sont
pas contigu.
ex: je doit mettre une croix sur les cellules (A1:A20) et sur les cellules
D1:D20)
comment faire cela ?
Merci pour toutes ces réponses.
"JB" a écrit dans le message de news:

Bonjour,

Sur le champ A1:B6

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([A1:B6], Target) Is Nothing And Target.Count = 1
Then
Application.EnableEvents = False
If Target = "" Then
Target = "X"
Else
Target = ""
End If
Application.EnableEvents = True
End If
End Sub

JB

On 27 jan, 11:59, "Cara_Dom" wrote:
Merci à vous tous ça marche.
Maintenant si je veux le faire par simple clic sur un endroit défini de la
feuille comment faire?
Merci
"Jacky" a écrit dans le message de news:
%



Bonjour

Alt+F11
Dans la fenêtre VBA project, (en principe en haut à gauche) double clic
sur la feuille concernée
Dans la fenêtre de droite coller le code
Retour sur la feuille est double clique dans une cellule
ou
dans le ThisWorkbook pour être valable sur toutes les feuilles en
modifiant la 1ère ligne
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal
Target As Range, Cancel As Boolean)
--
Salutations
JJ

"Cara_Dom" a écrit dans le message de news:

Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une croix
dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse- Masquer le texte des messages précédents --
Afficher le texte des messages précédents -






Avatar
JB
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("A1:A20,D1:D20"), Target) Is Nothing And
Target.Count = 1 Then
Application.EnableEvents = False
If Target = "" Then
Target = "X"
Else
Target = ""
End If
Application.EnableEvents = True
End If
End Sub

JB

On 27 jan, 13:21, "Cara_Dom" wrote:
Bonjour,

ça marche parfaitement.
Maintenant je voudrais pouvoir metre une croix sur des colonnes qui ne so nt
pas contigu.
ex: je doit mettre une croix sur les cellules (A1:A20) et sur les cellules
D1:D20)
comment faire cela ?
Merci pour toutes ces réponses.
"JB" a écrit dans le message de news:

Bonjour,

Sur le champ A1:B6

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([A1:B6], Target) Is Nothing And Target.Count = 1
Then
Application.EnableEvents = False
If Target = "" Then
Target = "X"
Else
Target = ""
End If
Application.EnableEvents = True
End If
End Sub

JB

On 27 jan, 11:59, "Cara_Dom" wrote:



Merci à vous tous ça marche.
Maintenant si je veux le faire par simple clic sur un endroit défini de la
feuille comment faire?
Merci
"Jacky" a écrit dans le message de news:
%

Bonjour

Alt+F11
Dans la fenêtre VBA project, (en principe en haut à gauche) doubl e clic
sur la feuille concernée
Dans la fenêtre de droite coller le code
Retour sur la feuille est double clique dans une cellule
ou
dans le ThisWorkbook pour être valable sur toutes les feuilles en
modifiant la 1ère ligne
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal
Target As Range, Cancel As Boolean)
--
Salutations
JJ

"Cara_Dom" a écrit dans le message de n ews:

Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une c roix
dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse- Masquer le texte des messages précédents --
Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -- Afficher le texte des messages précédents -








Avatar
Cara_Dom
Bonsoir,
Aprés avoir essayé cela marche trés bien.
Un grand merci et à bientôt, oui car j'ai une autre question qui n'a rien à
voir avec celle là.
"JB" a écrit dans le message de news:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("A1:A20,D1:D20"), Target) Is Nothing And
Target.Count = 1 Then
Application.EnableEvents = False
If Target = "" Then
Target = "X"
Else
Target = ""
End If
Application.EnableEvents = True
End If
End Sub

JB

On 27 jan, 13:21, "Cara_Dom" wrote:
Bonjour,

ça marche parfaitement.
Maintenant je voudrais pouvoir metre une croix sur des colonnes qui ne
sont
pas contigu.
ex: je doit mettre une croix sur les cellules (A1:A20) et sur les cellules
D1:D20)
comment faire cela ?
Merci pour toutes ces réponses.
"JB" a écrit dans le message de news:

Bonjour,

Sur le champ A1:B6

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([A1:B6], Target) Is Nothing And Target.Count = 1
Then
Application.EnableEvents = False
If Target = "" Then
Target = "X"
Else
Target = ""
End If
Application.EnableEvents = True
End If
End Sub

JB

On 27 jan, 11:59, "Cara_Dom" wrote:



Merci à vous tous ça marche.
Maintenant si je veux le faire par simple clic sur un endroit défini de
la
feuille comment faire?
Merci
"Jacky" a écrit dans le message de news:
%

Bonjour

Alt+F11
Dans la fenêtre VBA project, (en principe en haut à gauche) double
clic
sur la feuille concernée
Dans la fenêtre de droite coller le code
Retour sur la feuille est double clique dans une cellule
ou
dans le ThisWorkbook pour être valable sur toutes les feuilles en
modifiant la 1ère ligne
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal
Target As Range, Cancel As Boolean)
--
Salutations
JJ

"Cara_Dom" a écrit dans le message de
news:

Bonjour,

J'ai trouvé sur le site excelabo une procédure pour mettre une croix
dans
une des cellules d'une feuille.
Voici cette procédure.
Le problème c'est que je ne sais pas comment l'utilisé.

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

Merci de vos réponse- Masquer le texte des messages précédents --
Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -- Afficher le texte des messages précédents -