VBA utiliser la donnée trouvé (boucle) dans une formule

Résolu/Fermé
Veeeee - 6 août 2022 à 17:00
 Veeeee - 8 août 2022 à 17:25

Bonjour la communauté,

Je viens vous solliciter car je viens de créer une boucle en VBA grâce à YouTube :-), et j'arrive à quelque chose de pas trop mal. Seulement j'ai une problématique c'est que le Msgbox m'indique correctement mon n° de ligne, mais je ne sais pas l'exploiter.

Pour illustration et clarté de mes propos :

Avec la boucle suivante, je cherche la valeur EE

For ligne = 1 To 10
If Range("a" & ligne) = "EE" Then
MsgBox ligne
End If
Next ligne

imaginons que mes cellules A1 to A5 sont remplies du texte ci dessous

Colonne A

A1 = AA

A2 = BB

A3 = CC

A4 = DD

A5 = EE

Le msgbox m'indique bien 5, simplement au lieu de le présenter en msgbox, je voudrais m'en servir comme le point de départ pour ma formule (A5) Seriez vous comment faire ?

Je suis très mauvais en VBA, je débute à peine et avec YouTube (je n'ai pas de vrai prof :-)), donc si c'est trop tiré par les cheveux je n'y arriverais pas

Merci pour votre aide et au plaisir
Windows / Chrome 104.0.0.0

A voir également:

6 réponses

Le Pingou Messages postés 12083 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 23 mai 2024 1 435
Modifié le 7 août 2022 à 15:53

Bonjour,

Selon ce que je comprends, par exemple en cellule B1 de la feuille 2 mettre la valeur de référence pour la recherche. Votre code :

For ligne = 1 To 10
If Range("a" & ligne) = "EE" Then
   MsgBox ligne ' cette ligne peut être supprimée
   Sheets("Feuil2").Range("B1")= Range("a" & ligne).value
End If
Next ligne

Vous modifier votre formule de rechercheV comme suit :

=RECHERCHEV(B1;Feuil1!$A$5:$B$12;2;0)

1

Re,

Merciiiii

Ca fonctionne très bien et ça correspond presque à ma demande il va bien chercher la donner et l'inscrire en B1. Sauf que moi je veux le resultat de ma rechercheV et B1 et non le résultat de  EE. Mon but est de trouver EE pour ensuite que ma table de recherche de la rechercheV commence juste en dessous (A6) et surtout quelle aille chercher l'info via ma cellule A1 de la feuille2 

=RECHERCHEV(Feuil2!A1;Feuil1!$A$6:$B$12;2;0)

Désolé si je n'est pas était précis

Merci+++++++

0
Le Pingou Messages postés 12083 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 23 mai 2024 1 435
6 août 2022 à 22:18

Bonsoir,,

Merci du retour.

Je regarderai le tout demain.


1
Le Pingou Messages postés 12083 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 23 mai 2024 1 435
7 août 2022 à 15:33

Bonjour,

Pas facile de vous comprendre, se serait préférable de mettre votre fichier sur https://www.cjoint.com/ et poster le lien!

Merci


1

Bonjour,

Oui désolé j'ai du mal à bien expliquer ce que je souhaite. Ça marche, je le fais ce soir ou demain.

Encore merci

Amicalement 

0

Re bonjour et de nouveau merci.

Mon but est de faire la recherche V en VBA (et automatique) grâce à la boucle qui définit un point de départ pour moi

Voici le lien

https://www.cjoint.com/c/LHhtMMKfCYN

Encore merci

0
Le Pingou Messages postés 12083 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 23 mai 2024 1 435
7 août 2022 à 23:03

Bonjour,

Merci et voici ma proposition : https://www.cjoint.com/c/LHhvcAZJ0nn


1

Re bonjour,

Immense merci. Je regarderai plus précisément demain mais ça a l'air bon

Très bonne soirée

Amicalement 

0

Bonjour Le Pingou,

Un immense merci c'est exactement ça.

Bonne continuation

Amicalement

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12083 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 23 mai 2024 1 435
6 août 2022 à 17:08

Bonjour,

Pouvez-vous expliquer concrètement ce que vous faire lorsque la valeur [EE] est trouvée?


0

Salut Le Pingou,

Une fois que j'ai trouvé la valeur de EE de ma feuille1 (5 dans l'exemple) je vais faire une recherche V dans une feuille2 vers la feuille1 ou j'ai trouvé ma donnée. Je démarrerais la plage de recherche de la formule selon la valeur trouvée (A5 dans l'exemple).

En gros, avec l'exemple ci dessus je trouve 5 dans ma feuille 1, mon but et du coup que dans ma feuille 2 je réalise une formule rechercheV et que le début de la plage cherchée soit le 5 trouvé via la boucle

=RECHERCHEV(A1;Feuil1!$A$5:$B$12;2;0)

D'ailleurs, j'ai essayé en VBA mais ça ne fonctionne pas. Saurais tu pourquoi ?

Range("D1").Select

WorksheetFunction.VLookup("D1", Worksheets("feuille1").Range("A5:B12"), 2, 0)

Merci pour tout

0
Le Pingou Messages postés 12083 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 23 mai 2024 1 435
7 août 2022 à 22:01

Bonjour,

Avant de poursuivre, merci de me dire que viens faire Jerome dans le poste de Veeeee ?

La suite en dépend !


0

Bonjour,

En gros j'ai deux comptes le premier créé à la va vite à l'époque pour une question et le vrai compte créé après. Mais selon où je me connecte portable ou pc ça modifie le pseudo car ce n'est pas le même qui est enregistré

Cordialement 

0