liste de validation en VBA

bertgrav

XLDnaute Occasionnel
Bonjour,

je voudrais connaitre le code pour éviter à la macro de remettre une liste de validation dans une cellule si, dans cette cellule il y en a déjà une existante.

j'ai pensé à ceci:

If Range("Q" & x).Validation = "" Then

With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
"oui,non"


mais ça ne marche pas, pas plus d'ailleurs avec If Range("Q" & x).Validation = true Then

avez vous un conseil à me donner

merci

chantal
 

ninbihan

XLDnaute Impliqué
Re : liste de validation en VBA

Bonjour Bertgrav,

Peut être ainsi:

Code:
Sub Macro1()

On Error Resume Next
For x = Range("a65536").End(xlUp).Row To 1 Step -1
With Range("b" & x).Validation
    If Not .Type > 0 Then
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="choix10,choix20,choix30"
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End If
End With
Next

On Error GoTo 0
End Sub

Bonne journée,

Ninbihan
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 851
Membres
103 974
dernier inscrit
chmikha