Formule imbriquée sous VBA

DVBA Messages postés 10 Date d'inscription mercredi 14 mars 2018 Statut Membre Dernière intervention 25 mai 2018 - 25 mai 2018 à 11:51
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 - 25 mai 2018 à 20:35
Bonjour à tous,

J'ai un soucis de syntaxe avec des formules imbriquées sous VBA,

IfNa
If Range("F25").Value = "J" Then
Vlookup (Range("B25"),Base_M.O,2,False)*Range("G25"),(Vlookup(Range("B25"),Base_M.O,4,FALSE))*Range("G25")),Range("H25").Value)
End With

Si quelqu'un peut m'aider à trouver la bonne syntaxe svp ?

Cordialement,
DVBA

2 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
25 mai 2018 à 20:35
Bonjour,

Pas sûr de bien comprendre ce que tu veux faire dans SelectionChange() ???
La macro va être appelée à chaque fois que tu cliques une cellule, n'importe laquelle...

Peut-être ceci?
    If Range("F25") = "J" Then
Range("H25") = Application.WorksheetFunction.VLookup( _
Worksheets("Fiche_REX_P").Range("B25"), _
Worksheets("Base_M.O").Range("B:B"), 1, False)
Else
Range("H25") = Application.WorksheetFunction.VLookup( _
Worksheets("Fiche_REX_P").Range("B25"), _
Worksheets("Base_M.O").Range("D:D"), 1, False)
End If

1
DVBA Messages postés 10 Date d'inscription mercredi 14 mars 2018 Statut Membre Dernière intervention 25 mai 2018
25 mai 2018 à 14:54
Je reviens pour apporter plus de précisions, j'aimerai traduire la formule qui suit en VBA :

=SI.NON.DISP(SI(F25 ="J";(RECHERCHEV(B25;Base_M.O;2;FAUX)*G25);(RECHERCHEV(B25;Base_M.O;4;FAUX))*G25*D25);H25)

J'ai écris :
Private Sub Test_SelectionChange(ByVal Target As Range)
IfNa
If Range("F25").Value = "J" Then
VLookup Worksheets("Fiche_REX_P").Range("B25"), Worksheets("Base_M.O"), Columns("B:B").Select, False
Else
VLookup Worksheets("Fiche_REX_P").Range("B25"), Worksheets("Base_M.O"), Columns("D:D").Select, False
End If
Worksheets("Fiche_REX_P").Range("H25").Value
End With
End Sub

Mais cela ne fonctionne pas, quelqu'un saurait quoi changer dans mon code svp?

Cordialement,
DVBA
0
Rejoignez-nous