Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Cells(Target.Row, Target.Column).Value = "" Then MsgBox "oui" End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Static toto As Range If toto Is Nothing Then Set toto = Range("A1") If Cells(Target.Row, Target.Column).Value "" Then toto.Activate Else Set toto Target End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question'Evenement qui se déclenche lors de la selection de cellules 'Target: l'objet contenant la/les cellules selectionnée(s) Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'On initialise une plage de cellule nommée toto, qui ne référence rien Static toto As Range 'Si toto ne contient rien, on l'initialise avec la valeur de la cellule A1 If toto Is Nothing Then Set toto = Range("A1") 'Si la valeur de la cellule selectionnee = rien 'Alors toto.activate -> on active toto et on est renvoyé en A1? 'Sinon toto=Target -> toto recoit la cellule selectionnee? -> on reste dans la cellule? If Cells(Target.Row, Target.Column).Value "" Then toto.Activate Else Set toto Target End Sub
Option Explicit Dim maPlage As Range 'Evenement qui se lève lorsque l'on sélectionne une/des cellules Sub Worksheet_SelectionChange(ByVal Target As Range) 'On initialise maPlage avec les references du tableau sécurisé Set maPlage = Range("tableauSecurised") 'Si on se trouve dans le tableau If Not Application.Intersect(Target, maPlage) Is Nothing Then 'Si on sélectionne une seule ligne et moins de 3 colonnes '(possibilitée de passer outre la sécurité sans cette condition en commençant à selectionner depuis l'exterieur du tableau) If Target.Rows.Count = 1 And Target.Columns.Count < 3 Then 'Si la cellule est vide If IsEmpty(ActiveCell.Value) Then 'On sort de la procédure->l'utilisateur à acces à la cellule Exit Sub Else 'Si la cellule n'est pas vide -> On demmande un mot de passe DemandeMotDePasse End If Else 'Si l'utilisateur tente une selection multiple -> On annule la saisie TentativeSelectionMultiple End If Else 'Si la selection ne fait pas partie du tableau protégé -> On ne fait rien Exit Sub End If End Sub
With ActiveSheet .Cells.Locked = False .Range(ActiveCell).Locked = True .Protect AllowFiltering:=True End With