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

Comment utiliser la valeur d'une cellule dans un "find" par macro

  • Initiateur de la discussion Initiateur de la discussion Mers
  • Date de début Date de début

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 !

Mers

XLDnaute Junior
Boujour à tous,

J'ai une macro à l'intérieur de laquelle j'utilise la fonction find mais je ne sais pas comment fait pour identifier que la valeur à utiliser pour faire la recherche est dans la cellule M2.

La macro vas comme suit:

Code:
Sub Recherche()

    Sheets("BoM").Select
    Columns("O:O").Select
    Selection.Find(What:=[COLOR="Red"]Valeur en M2[/COLOR], After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
End Sub

Merci d'avance de votre aide.

M.
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro

Bonjour mers

regarde le code ci-dessous, si cela peut t'aider, pour une recher dans la colonne o de la feuille active :

Code:
Dim x As Range
Set x = Range("O:O").Find(Range("M2").Value, , xlValues, xlPart, , , False)
If Not x Is Nothing Then MsgBox "la valeur recherchée est en " & x.Address

bon après midi
@+
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro


Merci de m'avoir répondu Pierrt93.

Le problème est que la valeur à utiliser est sous la feuille "Analyse" et que le find se fait dans la feuille "BoM".

M.
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro

Re

modifies comme suit :

Code:
Dim x As Range
Set x = Sheets("BoM").Range("O:O").Find(Sheets("Analyse").Range("M2").Value, , xlValues, xlPart, , , False)
If Not x Is Nothing Then MsgBox "la valeur recherchée est en " & x.Address

@+
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro


Super! On s'approche du but.

Je réalise que je n'ai pas été assez claire dans mon explication. Il faut, une fois la valeur trouvée, que je m'y rende (de la même manière qu'un find standard).

M.
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro

Re

peut être en modifiant ainsi :

Code:
Dim x As Range
Set x = Sheets("BoM").Range("O:O").Find(Sheets("Analyse").Range("M2").Value, , xlValues, xlPart, , , False)
If Not x Is Nothing Then x.Select

@+

Edition avais oublié le "then"...
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro


J'apprécie beaucoup ton aide.

Le x.Select ne fonctionne pas (run-time error).

Sais-tu comment créer une variable? (moi toute mes macros sont faite en record donc je ne sais pas les termes de programmation). Si tu te réfères à mon message original, tout fonctionne bien si j'identifie une valeur dans la section que j'ai identifié en rouge. La seule chose est que je ne sais pas comment dire que la valeur de ma variable est en M2 et que cette variable est ce qui doit être utilisé dans la macro.

Il me semble que c'est qq chose du type:
Dim var as integer
set var as ....
et ensuite je n'ai qu'à appeler la variable à l'endroit qu'il faut dans la macro.

Peut-être que je vois ça plus simple que ce ne l'est en réalité...

M.
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro

Re

oui, fonctionne si la valeur trouvée est sur la feuille active, si c'est pas le cas ca bogue... il faut modifier comme suit :

Code:
Option Explicit
Sub docaouvrir() 'fonction qui ouvre le fichier Excel généré par le logiciel Coriolis
Dim x As Range
Set x = Sheets("Feuil1").Range("O:O").Find(Sheets("Feuil2").Range("M2").Value, , xlValues, xlPart, , , False)
If Not x Is Nothing Then Application.Goto x
End Sub

Attention j'ai modifié le nom des feuilles pour test...

@+
 
Re : Comment utiliser la valeur d'une cellule dans un "find" par macro


Tout fonctionne à merveille! Merci beaucoup.

M.
 
- 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

Réponses
2
Affichages
589
Réponses
3
Affichages
641
Réponses
12
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…