essai = 11 * _
Application.WorksheetFunction.XLookup("NANTES" & CDbl("11"), Range("Externalisee[SITE]") & Range("Externalisee[Externalisee Nb Salariés (Siège)]"), _
Range("Externalisee[Externalisee Prix global (cabinet)]"), "", -1)
Bonjour JHA,Bonjour à tous,
Je te propose cette formule
VB:=INDEX(Externalisee[Externalisee Prix global (cabinet)];EQUIV(B15;SI(Externalisee[SITE]=$A$15;Externalisee[Externalisee Nb Salariés (Cabinet)]);1))
JHA
Pas de souci je vais attendre , merci beaucoup et belle journée à toiBonjour à tous,
Désolé, je suis un nul en VBA.
Patience, les pros du code vont te donner une solution.
JHA
=INDEX(Externalisee[Externalisee Prix global (cabinet)];EQUIV(B15;SI(Externalisee[SITE]=$A$15;Externalisee[Externalisee Nb Salariés (Cabinet)]);1))
Application.Index(Range("Externalisee[Externalisee Prix global (cabinet)]"), Application.Match(Sheets("Feuil1").Range("b15").Value, if(Range("Externalisee[SITE]")=sheets("feuil1").range("a15").value,Range("Externalisee[Externalisee Nb Salariés (Cabinet)]"), 1))
j'ai fait et cela me donne çaBonjour à tous,
Regarde du côté formula.local en VBA
JHA
VB:
Code:
|
Bonjour @eric72 ,@JHA , le forumPas de souci je vais attendre , merci beaucoup et belle journée à toi
Au lieu deVB:
Code:ActiveCell.Formula2R1C1 = _ "=INDEX(Externalisee[Externalisee Prix global (cabinet)],MATCH(R[-2]C[-2],IF(Externalisee[SITE]=R15C1,Externalisee[Externalisee Nb Salariés (Cabinet)]),1))"
C'est une formule matricielleActiveCell.Formula2R1C1=
ActiveCell.FormulaArray =
Bonjour CP4,Au lieu de
C'est une formule matricielle
Il y a peut-être un autre moyen en VBA. Je n'ai pas compris ce que tu veux obtenir.VB:ActiveCell.FormulaArray =
=INDEX(Externalisee[Externalisee Prix global (cabinet)];EQUIV(B15;SI(Externalisee[SITE]=$A$15;Externalisee[Externalisee Nb Salariés (Cabinet)]);1))
Application.Index(Range("Externalisee[Externalisee Prix global (cabinet)]"), Application.Match(Sheets("Feuil1").Range("b15").Value, if(Range("Externalisee[SITE]")=sheets("feuil1").range("a15").value,Range("Externalisee[Externalisee Nb Salariés (Cabinet)]"), 1))
j'ai bien fait ce que tu dis mais cela copie juste la formule dans la cellule, c'est bien une solution VBA que je souhaiteAu lieu de
C'est une formule matricielle
Il y a peut-être un autre moyen en VBA. Je n'ai pas compris ce que tu veux obtenir.VB:ActiveCell.FormulaArray =