VBA tester range validation

chris

XLDnaute Barbatruc
Bonjour
Quelqu'un sait-il comment tester en VBA si une validation (DOnnées validation) est associé à une cellule ?
Dans le cas où il y a une validation j'arrive à tester mais dans le cas contraire je ne sais quel test utiliser car cela me renvoie toujours une erreur.
Merci
 

MichelXld

XLDnaute Barbatruc
bonjour chere Chris , bonjour JP

sans garantie ( je n'ai pas testé tous les cas de figure) je te propose cette macro pour vérifier s'il y a une validation dans la cellule A1

Sub controlePresenceValidation()
Dim Vl As Range

On Error Resume Next
Set Vl = Cells.SpecialCells(xlCellTypeAllValidation)
On Error GoTo Fin

If Not Intersect(Vl, Range('A1')) Is Nothing Then
MsgBox 'Il y a une Validation dans la cellule'
Else
MsgBox 'Il n'y a pas de validation dans la cellule'
End If

Exit Sub
Fin:
MsgBox 'Il n'y a pas de validation dans la feuille'
End Sub



bon apres midi
MichelXld

Message édité par: michelxld, à: 19/02/2006 15:29
 

chris

XLDnaute Barbatruc
Bonjour Michel et merci
Je vais tester cela.
En attendant je m'en suis sortie par une pirouette :
je remplis la cellule puis je teste si c'est conforme à la validation et si non, je rétablis la valeur d'origine.
J'ai utilisé
if Range.Validation.Value = False

(quand je ne trouve pas la porte, j'essayes la fenêtre !)

Bonne soirée.
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 668
Messages
2 090 739
Membres
104 643
dernier inscrit
adriano22