Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 If not intersect avec autre condition

Willystic

XLDnaute Nouveau
Bonjour,
J'utilise "If not intersect" afin de donner que 2 valeurs à une cellule dans une plage de cellule ("Bon état" ou "manquant")
Par contre dans cette plage de cellule, il y a des cellules vides et j'aimerai qu'elles soient vérouillées ou que l'on ne puissent pas changer la valeur "vide". Voici la partie du code.
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

'Changement des états en "bon état" ou "Manquant"

  If Not Intersect([H9:S9], Target) Is Nothing Then Target.Value = IIf(Target.Value = "Bon état", "Manquant", "Bon état")
  Cancel = True

End Sub

merci de votre aide.
 
Solution
Bonjour,

Si j'ai bien compris ta demande :
VB:
  If Not Intersect([H9:S9], Target) Is Nothing And Target <> "" Then Target.Value = IIf(Target.Value = "Bon état", "Manquant", "Bon état")
  Cancel = True

Bonne journée

Calvus

XLDnaute Barbatruc
Bonjour,

Si j'ai bien compris ta demande :
VB:
  If Not Intersect([H9:S9], Target) Is Nothing And Target <> "" Then Target.Value = IIf(Target.Value = "Bon état", "Manquant", "Bon état")
  Cancel = True

Bonne journée
 

fanch55

XLDnaute Barbatruc
Salut,
Attention aux cellules fusionnées ...
VB:
  If Not Intersect([H9:S9], Target) Is Nothing Then
        With Target.Cells(1)
           If .Value <> vbNullString Then _
              .Value = IIf(.Value = "Bon état", "Manquant", "Bon état")
        End With
  End If
  Cancel = True

Fonctionne avec une cellule simple ou des cellules fusionnées ( seule la première a une valeur ).

Pourquoi ne pas avoir donné un nom à la plage, cela éviterait de modifier le code si la plage s’agrandit , se réduit ou est déplacée ...
 

Willystic

XLDnaute Nouveau
Merci Calvus et fanch55. J'ai utlisé le"and" de Calvus et ça répond à ma demande.

pour le simple "and" et "nommée une plage" sont des réflexes que je n'ai pas encore. Merci de votre soutien.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…