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.
En VBA, j'ai essayé de faire l'adaptation suivante dans une boucle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 regardant sur le web, j'ai vu qu'il fallait que j'adapte fonction en anglais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
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.
Partager