Partage
  • Partager sur Facebook
  • Partager sur Twitter

case à cocher manuelle

Sujet résolu
    24 juillet 2020 à 14:42:41

    Bonjour,

    Voila, j'ai 4 colonnes dans lesquelles on peut mettre "X".

    Ce que j'aimerais c'est que si on mets X dans une cellule, les 3 autre cellules de la meme ligne se vide.

    Ma problématique est que j'ai oublié comment faire pour récupérer la saisie de l'utilisateur...

    Voici ce que ne veux pas (et que j'ai pour le moment)

    Voici que je souhaites :

    Voici mon code mais qui ne marche pas... Enfin il marche si la case qu'on vient de sélectionner contient déjà X mais pas quand on saisi un X...

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim nbCompTech As Integer, nbCompRela As Integer, nbComp As Integer, i As Integer
    
    ' On récupère le nombre de compétences
    nbCompTech = countComp(ActiveSheet.name, 21)
    nbCompRela = countComp(ActiveSheet.name, 21 + nbCompTech)
    nbComp = countComp(ActiveSheet.name, 21 + nbCompTech + nbCompRela)
    
    If Not Intersect(Target, Range("C21:F" & 21 + nbComp)) Is Nothing And Target.Text = "X" Then
        For i = 0 To 4
            If (i + 3 <> Target.Column) Then
                Cells(Target.Row, i + 3).Value = ""
            End If
        Next
    End If
    
    End Sub

    A la question "Pourquoi ne pas mis des radio boutons à la place" : parce que c'est une demande de l'utilisateur...

    Pouvez-vous m'aider svp?

    SOLUTION : Stupidité quand tu nous tient...

    Il faut utiliser la fonction "Worksheet_Change et non pas WorkSheet_SlectionChange...

    -
    Edité par lindadu01 24 juillet 2020 à 14:57:47

    • Partager sur Facebook
    • Partager sur Twitter

    Parfois, arrêter 5 minutes son développement permet de mieux repartir face à un problème ;)

      24 juillet 2020 à 15:59:54

      Une différence entre les 2 événements, c'est que Target est la nouvelle plage sélectionnée pour SelectionChange, alors que c'est la plage modifiée pour Change
      • Partager sur Facebook
      • Partager sur Twitter

      case à cocher manuelle

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown