Cellules à cocher
Bonjour à tous,
Assez novice en Excel je vous propose ma problématique :
je suis en train de construire une checklist de contrôle.
Pour chacune des questions à poser (traduites par des critères situés dans les colonnes C, D, E et F), je souhaiterai que la personne réalisant le contrôle valide le niveau de conformité en cochant des cellules par double clique. Le niveau de conformité serait à cocher dans les cellules des colonnes H, I, J K et L (c'est à dire : OK, 1, 2, 3 ou non applicable).
Après diverses bidouilles et consultations de forums, je suis arrivé à rendre fonctionnelle cette fonction de cellule cochée par double clique (hip hip hip Excel c'est fantastique !!).
Mon problème désormais est que le code actuel permet pour une même question de cocher les 4 possibilités, en colonne H, I J K et L. Or ce n'est pas ce que je voudrais. Je voudrais qu'une seule cellule puisse être cochée par ligne.Par exemple, pour une question donnée, si je coche d'abord OK (colonne H) et qu'en fait il aurait fallut cocher 1 (en colonne I), je vodrais que le fait de cocher 1 supprime la coche de la cellule OK.
Il s'agit de mon premier post, j'espère avoir donné suffisamment de détails. Ci-dessous je vous propose de consulter mon code (pompé en partie de divers forum) Je vous joint un fichier test également.
En espérant que mon problème puisse trouver une solution. Mais vu le niveau des contributeurs sur ce forum je n'en doute pas !
Bien à vous et à bientôt
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Column > 7 And ActiveCell.Column < 13 Then 'ligne 1
'7 et 13 correspondent aux numéro des colonnes ente lesquelles tu souhaite cliquer, change les numéros en fonction de tes besoins
If ActiveCell.Row > 4 And ActiveCell.Row < 177 Then 'ligne 2
'4 et 177 correspondent aux numéros des lignes concernées, change les numéros en fonction de tes besoins
'si tu veux gerer le traitement sur une colonne complete enleve la ligne 2 et la ligne 15
If ActiveCell.Value = 4 Then 'ligne 3
ActiveCell.ClearContents 'ligne 4
Cells(ActiveCell.Row, ActiveCell.Column + 1).Activate 'ligne 5
Else 'ligne 6
ActiveCell.Value = "X" 'ligne 7
ActiveCell.Font.Name = "Monotype Sorts" 'ligne 8 : police de caratère où le 4 correspond à une coche
ActiveCell.Font.Size = 10 'ligne 9
ActiveCell.Font.Bold = True 'ligne 10 : mise en caratères gras
ActiveCell.HorizontalAlignment = xlCenter 'ligne 11
ActiveCell.VerticalAlignment = xlCenter 'ligne 12
Cells(ActiveCell.Row, ActiveCell.Column + 1).Activate 'ligne 13
End If 'ligne 14
End If 'ligne 15
Else 'ligne 16
Cancel = True 'ligne 17
End If 'ligne18
End Sub
Bonjour,
Ton classeur en retour, avec un tite simplification...
A+
lermite a écrit :Bonjour,
Ton classeur en retour, avec un tite simplification...
A+
Bonjour Lermite et merci beaucoup !! Effectivement c'était bien trop compliqué !.
Ta solution marche parfaitement.
Bravo et merci encore à toi