VBA - Validation des données et formule
Bonjour à tous,
Sur un ensemble de cellules, je cherche à créer une sélection de données.
Cette sélection de données devant être dynamique, je cherche à convertir une formule réalisée sur un exemple.
Code:
1 2 3 4 5 6 7
|
=DECALER(
CATALOGUE!E1;
EQUIV(CONCATENER(GAUCHE(U2;2);"_";V2;"_";W2);CATALOGUE!R2:R200;0);
0;
NB.SI(CATALOGUE!R:R;CONCATENER(GAUCHE(U2;2);"_";V2;"_";W2));
1) |
En VBA, j'ai essayé de faire l'adaptation suivante dans une boucle :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:= _
"=DECALER(CATALOGUE!E1;EQUIV(CONCATENER(GAUCHE(U & i;2);"_";V & i;"_";W & i);CATALOGUE!R2:R200;0);0;NB.SI(CATALOGUE!R:R;CONCATENER(GAUCHE(U & i;2);"_";V & i;"_";W & i));1)"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With |
En regardant sur le web, j'ai vu qu'il fallait que j'adapte fonction en anglais :
DECALER -> OFFSET
EQUIV -> MATCH
NB.SI -> COUNTIF
Remplacer les ";" par des ","
Maintenant, en terme de mise en œuvre, je n'y arrive pas. J'ai toujours des soucis de syntaxe.
J'aurais besoin d'un petit coup de pouce pour m'en sortir.
Merci par avance pour votre aide.