Afficher directement le résultat d'une formule (INDEX/EQUIV) via une macro VBA

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

sednanref

XLDnaute Nouveau
Bonjour,

J'aimerais savoir si quelqu'un peut m'aider à afficher directement le résultat d'une formule de type INDEX/EQUIV via une macro vba.

Pour l'instant, je n'ai réussi qu'à copier dans un premier temps la formule dans une cellule, puis de recopier la valeur par dessus. Voir mon fichier Excel exemple.
Code:
Sub RecopierDonnes()
    For x = 2 To 9
        Cells(x, 11).FormulaR1C1 = "=INDEX(Tableau1[Nombre],MATCH(RC6,Tableau1[Date]))"
            Cells(x, 11).Copy
            Cells(x, 11).PasteSpecial Paste:=xlPasteValues
        Cells(x, 12).FormulaR1C1 = "=INDEX(Tableau1[Nombre2],MATCH(RC6,Tableau1[Date]))"
            Cells(x, 12).Copy
            Cells(x, 12).PasteSpecial Paste:=xlPasteValues
    Next x
End Sub

J'avais pensé à stocker le résultat de la formule dans une variable et ensuite réinjecter la valeur de la variable dans la cellule mais je n'y arrive pas.
J'ai cherché du côté de "EVALUATE" mais après plusieurs tentatives, rien ne fonctionne :/


J'aimerais simplement afficher dans un tableau récapitulatif (en rouge), directement les valeurs correspondant aux différents tableaux (A et B ici). Sans passer par un copier coller fastidieux par exemple.
Par la suite, je voudrais faire une comparaison entre le tableau recap (si on fait une modification) et les tableaux orignaux...
Mais tout d'abord j'aimerais améliorer ma première partie 🙂

Voila, si quelqu'un a une idée, Merci ! 🙂
 

Pièces jointes

Re : Afficher directement le résultat d'une formule (INDEX/EQUIV) via une macro VBA

Bonsoir fernandes

Teste:
Code:
tablo = Range("Tableau1")
For x = 2 To 9
For n = LBound(tablo, 1) To UBound(tablo, 1)
  If tablo(n, 1) = Cells(x, 10) Then
    Cells(x, 11) = tablo(n, 2)
    Cells(x, 12) = tablo(n, 3)
  End If
Next
Next
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour