Syntaxe fonction rechercheV et fonction SI en VBA ?

Bonjours tous le monde,

Je voudrais avoir la syntaxe de la fonction recherchev ainsi que de la fonction SI en VBA

Par exemple comment écrire =RECHERCHEV(A7;V6:AE13;2;FAUX)

et comment écrire =si(A7>0;A7;"0")

Merci d'avance.

Bonjour

Yoda22 a écrit :

=RECHERCHEV(A7;V6:AE13;2;FAUX)

Resultat = Application.VLookup(Range("A7"), Range("V6:AE13"), 2, False)
Yoda22 a écrit :

=si(A7>0;A7;"0")

If Range("A7") > 0 Then Resultat = Range("A7") Else Resultat = 0

Bonsoir,

Ci-dessous fonction RechercheV en VBA.

Cdlt.

Public Function retFind(NombreRecherché, PlageRecherche, NoColonne) As Variant
'Daniel M., mpfe
Dim f As Variant

  f = Application.VLookup(NombreRecherché, PlageRecherche, NoColonne)
  If IsError(f) Then
    retFind = ""
  Else
    retFind = f
  End If
End Function

Bonjour,

Merci pour vos réponses cependant j'ai encore un petit problème.

Voici donc la formule adapté à ma situation:

.Range ("U2:U" & DerLig).Formula="Application.VLookup(RC[-15], sheets("Feuil2").Range("V6:AE13"), 2, False)

Le problème vient du faite que ma plage de recherche se trouve en feuil2, et il me met une erreur à ce niveau, comment résoudre le problème ?

Bonjour

Tu mélanges les type de formules

Moi je ferais

Range("U2:U" & derlig).Formula = "=VLOOKUP(RC[-15],Feuil2!R6C22:R13C31,2,FALSE)"

Merci pour ces informations.

Pour la plage recherché il y a une façon d'écrire X57:Y307 plus simplement que R6C22:R13C31 ??

Bonjour

Essayes

Range("U2:U" & derlig).Formula = "=VLOOKUP(RC[-15],Feuil2!" & Range("V6:AE13").Address(ReferenceStyle:=xlR1C1) & ",2,FALSE)"

Merci c'est parfais

J'ai un problème avec ma fonction SI:

.Range("AL1:AL" & DerLig).Formula = "=SI(ET(RC[-2]<RC[-1],RC[-1]>0,RC[-2]>0),RC[-1]-RC[-2],0)"

Quand j''éxécute la macro sa fonctionne correctement mais dans la cellule ou je devrais avoir la valeur j'ai #Non, si je vais sur la cellule et que je fais simplement Entrée, la formule fonctionne.

Quelqu'un à une idée du problème ?

Bonjour

Il faut écrire dans la langue de Shakespeare

Range("AL1:AL" & DerLig).Formula = "=IF(AND(RC[-2]<RC[-1],RC[-1]>0,RC[-2]>0),RC[-1]-RC[-2],0)"

Merci, c'est parfait.

Les gens sur ce forum sont vraiment génial.

Rechercher des sujets similaires à "syntaxe fonction recherchev vba"