Inscrire X dans cellule en un clic

Résolu
jetset30 Messages postés 32 Statut Membre -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je souhaiterai obtenir une formule qui me permettrait d'inscrire, lors d'un clic sur une cellule, la lettre "X" et de l'effacer en cliquant de nouveau dessus.

Merci pour vos réponses.
Configuration: Windows XP
Firefox 3.0.4

10 réponses

  1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Bonjour,

    tu aurais dû ouvrir ta propre discussion à la place de relancer cette ancienne
    enfin teste ce code qui inscrit un X sur un double clic.
    A adapter
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Union([B17:H17], [J17:K17])) Is Nothing Then
    If IsEmpty(Target) Then
    Target = "X"
    Cancel = True
    Else
    If Target = "X" Then
    Target = ""
    Cancel = True
    End If
    End If
    End If
    End Sub


    A+
    Mike-31

    Une période d'échec est un moment rêvé pour semer les graines du savoir.
    3
  2. cherouana Messages postés 9 Statut Membre 2
     
    voila le code :

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Intersect(Range("case_cochée"), Target) Is Nothing Then Exit Sub
    If IsEmpty(Target) Then
    Target = "x"
    Cancel = True
    Else
    If Target = "x" Then
    Target = ""
    Cancel = True
    End If
    End If
    End Sub

    1 condition : creer une zone nommée case_cochée (insertion/nom/definir)
    bonne réception
    2
  3. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Pour suivre le code de Cherouana, tu places ce code dans le code feuille à traiter par exemple pour la feuill1
    clic droit sur l'onglet de Feuil1 et colles ce code

    Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Intersect(ActiveCell, Target) Is Nothing Then Exit Sub
    If IsEmpty(Target) Then
    Target = "X"
    Cancel = True
    Else
    If Target = "X" Then
    Target = ""
    Cancel = True
    End If
    End If
    End Sub

    Ensuite pour l'utiliser un clic droit sur les cellules vide à traiter

    A+
    1
  4. JASS
     
    BONJOUR

    PAR LE MOT "X" TU VEUX CREER UNE CASE DE VALIDATION POURQUOI NE PAS UTILISER L OUTIL "CASE A COCHER"?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. cherouana Messages postés 9 Statut Membre 2
     
    bonsoir

    J'ai une solution dans mes archives... Je pense que cela doit se faire assez facilement avec un petit code en VBA.
    Veux tu tenter le coup?
    0
  7. jetset30 Messages postés 32 Statut Membre
     
    Bonjour et merci pour vos réponses !

    En fait de la cellule de destination pour que le "X" s'inscrive se ferait uniquement sur la cellule A1, sans faire un double clic ou un clic droit, mais tout simplement un clic gauche (normal).

    A+
    0
  8. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Pourquoi écrire un code pour une cellule !!!

    autant saisir directement X

    A+
    0
  9. jetset30 Messages postés 32 Statut Membre
     
    Ben c'est que j'aimerai avoir tout simplement pour faciliter la saisie...

    a+
    0
  10. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    teste ces deux codes qui s'adressent uniquement à la cellule A1
    le code ci dessous est celui qui marche le mieux mais avec double clic

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Intersect(Range("A1"), Target) Is Nothing Then Exit Sub
    If IsEmpty(Target) Then
    Target = "X"
    Cancel = True
    Else
    If Target = "X" Then
    Target = ""
    Cancel = True
    End If
    End If
    End Sub

    le code ci dessous un clic mets le X deuxième clic enléve le X

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Intersect(Range("A1"), Target) Is Nothing Then Exit Sub
    If IsEmpty(Target) Then
    Target = "X"
    Cancel = True
    Else
    If Target = "X" Then
    Target = ""
    Cancel = True
    End If
    End If
    End Sub

    Ne peut pas faire mieux A+
    0
  11. DamDamDeo
     
    Bonsoir, je viens de tomber sur votre discussion qui m'intéresse :

    Sur la ligne : "If Intersect(Range("A1"), Target) Is Nothing Then Exit Sub"

    Je souhaiterais applique la fonction sur deux plage de cellules: B17 à H117 et J17 à K117

    Cordialement
    0