Stocker le nom d'une feuille + adresse d'une plage dans une variable

Hello le forum

J'essaye de trouver un code qui va permettre de stocker une adresse de plage dans une variable afin de la réutiliser dans une formule dans la suite du code.

Voici ce que j'ai ébauché mais j'ai des erreurs

Dim rng_BBD As Range
Dim rng_T_FF As Range
Dim T_FF As Range
Dim T_BDD As Range

With Worksheets("BDD")

    .Activate
    derlig_BDD = .Range("B" & Rows.Count).End(xlUp).Row
    dercol_BDD = .Cells(3, Cells.Columns.Count).End(xlToLeft).Column
    Set rng_BDD= .Range(Cells(3, 2), Cells(derlig_T_FF, dercol_T_FF))

End With

With ThisWorkbook.Sheets("Prix AO")

    .Activate

********* Ensuite j'ai une formule INDEX + EQUIV ou mes tableaux stockés dans des variables 

Voici un exemple de ce que j'imagine :

Range ("C3").formulaarray = "=INDEX(Rng_BDDA,MATCH( et ainsi de suite ...) 

End With
End Sub

J'ai 2 soucis avec ce code:

- Je n'arrive pas à définir ma rng sans le .activate et je ne trouve pas ça élégant même si cela fonctionne.

- La rng.address me donne une plage de celulle mais j'ai besoin de quelque chose sous cette forme : 'Nom feuille'!A1:B2000

Vous auriez une petite piste sur laquelle je pourrais me lancer ?

Merci d'avance et bonne journée

Erwan

Bonjour Erwan,

peux-tu montrer la formule comme si tu la créais sur une feuille ?

ou joindre un fichier avec quelque donnée et la formule.

Bonjour à tous,

un Range contient la plage ET sa feuille.

Set shRng = rng.Parent pour avoir la Sheet.

Ou rng.Parent.Name pour son nom.

eric

Rechercher des sujets similaires à "stocker nom feuille adresse plage variable"