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
Parfois, arrêter 5 minutes son développement permet de mieux repartir face à un problème ;)
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
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.
Parfois, arrêter 5 minutes son développement permet de mieux repartir face à un problème ;)