Cases à cocher

R

rud@ï

Guest
Bonjour tt l monde!
J'utilise dans une feuille excel des cases à cocher avec le code suivant:


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Mise en forme de la cellule
Target.Font.Name = 'Wingdings'
Target.HorizontalAlignment = xlCenter
'Empêche la sélection de la cellule après le double-clic
Cancel = True
'Teste de la valeur de la cellule
If Target.Value = 'o' Then
Target.Value = 'ý'
ElseIf Target.Value = 'ý' Then
Target.Value = 'o'
Else: Target.Value = 'ý'
End If
Target.Select
End Sub


Mais le fait est que dès que je fais double clic, cela m'insère une nouvelle case à cocher alors que je n'en ai pas besoin bien sûr! Ce qui est normal vu le code que j'utilise mais je voudrais faire une condition qui empêche cela !!!

merci pour votre aide

Fichier joint
 
R

rud@ï

Guest
Merci de ta réponse!
Mais mon problème est partiellement résolu car quand je fais double clic la case n'est pas crée mais je ne peux quand même pas rentrer dans la cellule pour écrire !
C à dire qu'il ne crée pas la forme de la case à cocher mais donne à la cellule les attributs d'une cellule à case à cocher !

Ce que je veux c que je puisse double cliquer pour insérer du texte dans une cellule autre que celle à cocher et quand même avoir une action en double cliquant sur les cases à coher existantes!

c peut etre mal expliquer mais je fais pas mieux

merci
 
R

rud@ï

Guest
il ne veut pas le joindre!!!

[file name=casesacocher.zip size=2532]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/casesacocher.zip[/file]
 

Pièces jointes

  • casesacocher.zip
    2.5 KB · Affichages: 25

myDearFriend!

XLDnaute Barbatruc
Re rud@ï,

Ci-joint ton fichier modifié...

La procédure se présente comme suit :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
      'Teste de la valeur de la cellule
      If Target.Value Like '[oý]' Then
            Target.Value = IIf(Target.Value = 'o', 'ý', 'o')
            'Empêche la sélection de la cellule après le double-clic
            Cancel = True
      End If
End Sub
Comme les cellules 'cases à cocher' sont prédéfinies, tu n'as pas besoin d'en redéfinir le formatage (Font et Alignement) dans cette procédure...

Cordialement, [file name=mDF_casesAcocher.zip size=7537]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/mDF_casesAcocher.zip[/file]
 

Pièces jointes

  • mDF_casesAcocher.zip
    7.4 KB · Affichages: 28

myDearFriend!

XLDnaute Barbatruc
Bonsoir Deudecos,

Like est un opérateur de comparaison, trop peu utilisé je trouve car on peut combiner pas mal de chose grâce à ça (je te conseille de jeter un oeil sur l'aide...). Cet opérateur permet notamment l'utilisation de caractères 'jokers' très utiles parfois.

A la place de la ligne :
If Target.Value Like '[oý]' Then
On peut utiliser :
If Target.Value = 'o' Or Target.Value = 'ý' Then
Cordialement,
 

Discussions similaires

Statistiques des forums

Discussions
312 345
Messages
2 087 466
Membres
103 550
dernier inscrit
ALHAERi