Excel 2010 VBA- formule vlookup

Oorreelly -  
 alena20 -
Bonjour à tous,

Je suis relativement novice dans le domaine des macros Excel et j'essaie d'en développer une pour mon job.
Dans cette dernière il y a une formule vlookup:

Cells(j, 21).Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-15],'[MacroBesoinsPO.xlsm]List PO with BOM'!R[" & Var1 & "]C3:R[" & Var2 & "]C5,3,FALSE)"

La plage dans laquelle s'effectue le vlookup est donc une plage variable définie par les 2 variables Var1 et Var2 qui prennent leurs valeurs précédemment dans ma macro.
Quand je fais tourner ma macro pas à pas, Var1 et Var2 ont bien les bonnes valeurs mais lorsque je laisse tourner ma macro je me rends compte que le vlookup ne s'effectue pas sur la bonne plage.

Est ce qu'il y a une erreur dans la manière où j'ai rédigé mon vlookup?
Merci d'avance pour votre aide,

Cordialement,

1 réponse

  1. alena20
     
    Bonjour,

    J'ai creé le code similaire et ca marche. Apparement l'erreure est d'autre origine. Si vous pouvez me passer le code entier, je pourrais essayer de le regarder. Sinon le code est comme suite:

    Sub Macro2()
    Dim var1 As Long, var2 As Long
    
    var1 = -6
    var2 = 2
    
        Range("A7").Select
        ActiveCell.FormulaR1C1 = "=VLOOKUP(R[-6]C[2],R[" & var1 & "]C[3]:R[" & var1 & "]C[5],2,FALSE)"
    End Sub
    

    Lien fichier-exapmle: http://cjoint.com/?BHspifM231n

    Cordialement,
    Alena M.
    0
    1. alena20
       
      Voici j'ai essayé avec autre fichier excel comme source et ca fonctionne egalement. (Pour info je travaille avec Excel 2010). :

      Sub Macro2()
      Dim var1 As Long, var2 As Long
      
      var1 = -6
      var2 = 2
      
          Range("A7").Select
          ActiveCell.FormulaR1C1 = "=VLOOKUP(R[-6]C[2],'[macro Vlookup-source.xlsm.xlsx]Feuil1'!R[" & var1 & "]C[3]:R[" & var1 & "]C[5],2,FALSE)"
      End Sub
      0