Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Recherche VBa

  • Initiateur de la discussion Marc
  • Date de début
M

Marc

Guest
Bonjour,

J'ai une plage nommée PLAGE1 ( C1:C100). J'effectue une recherche de valeur via une boucle For each ... dans cette plage. Quelle instruction VBA me permet, dès lors que j'ai trouvé la valeur cherchée, d'aller récupérer la valeur sur la ligne correspondante dans une plage PLAGE2 (dans D1100)

Je cherche à utiliser le nom de la plage plutôt que l'instruction cells((i,j) (que je sais faire) car cette dernière instruction est à modifier si dans ma feuille excel, j'insère une nouvelle colonne .

Merci de votre aide
 
S

steplof

Guest
Salut à tous

Marc, si j'ai bien compris tu peux utiliser la propriété item de Range qui donne le xieme élément d'une plage

Par exemple

Sub macrotest()

ligne = 5

msgbox Range("plage2").Item(ligne).value
End Sub

te renvoie la valeur du 5e élément de ta plage2

En espérant t'avoir aidé

@+ Steplof
 
M

Marc

Guest
Bonjour et merci Steplof,

Ma boucle de lecture dans plage1 est de la forme :

For Each c In Range("plage1")
ligne=ligne+1
If c.Value = 10 Then a = Range("PLAGE2").Item(ligne).Value
Next c

j'ai mis 10 comme valeur recherchée dans plage1 (pour l'exemple)

Je récupère bien la valeur dans la plage2

encore une fois merci
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…