VBA: problème avec la fonction find

  • Initiateur de la discussion Initiateur de la discussion clementt
  • 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 !

clementt

XLDnaute Nouveau
Bonjour à tous,

J'ai un fichier , composé de plusieurs feuillets: "Recherche", "BDD" et "Mise_en_forme"

Sur le feuillet "Recherche", j'ai un nombre variable de références, sur la ligne 1 à partir de la cellule "O1".

Sur le feuillet "BDD", j'ai une base de données, avec un certains nombre d'informations pour chaque référence. Il est important de noter qu'une référence peut être présente plusieurs fois.

Le feuillet "Mise_en_forme" est vierge


Je cherche à créer la macro suivante:
Lorsque la macro est lancée, je veut que l'on recherche l'ensemble des références demandées dans le feuillet "BDD", et recopier la ligne entière correspondante dans le feuillet "Mise_en_forme"

Mon code fonctionne (les références demandées sont recopiées) à ceci-près que la macro copie ensuite chaque ligne du feuillet "BDD" 40 fois!

Je n'arrive pas à identifier le problème.

Par avance, merci

Clément
 

Pièces jointes

Re : VBA: problème avec la fonction find

Bonjour

regardez du coté de vos arguments



[TD="class: mainsection"] Quoi [/TD]

[TD="class: mainsection"]Obligatoire[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"]Données à rechercher. Il peut s'agir d'une chaîne ou de
tout autre type de données Microsoft Excel.[/TD]


[TD="class: mainsection"] Après [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"]Cellule après laquelle vous souhaitez commencer la
recherche. Cela correspond à la position de la cellule active lorsqu'une
recherche est effectuée à partir de l'interface utilisateur. Notez que
l'argument Après doit correspondre à une seule cellule de la plage.
Rappelez-vous que la recherche commence après cette cellule ; la cellule
spécifiée n'est pas recherchée jusqu'à ce que la méthode revienne à cette
cellule. Si vous ne spécifiez pas cet argument, la recherche commence après la
cellule située dans le coin supérieur gauche de la plage.[/TD]


[TD="class: mainsection"] RechercherDans [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"]Type d'informations.[/TD]


[TD="class: mainsection"] Regarder [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"]Il peut s'agir de l'une des constantes XlLookAt
suivantes : xlWhole ou xlPart .[/TD]


[TD="class: mainsection"] OrdreRecherche [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"]Il peut s'agir de l'une des constantes
XlSearchOrder suivantes : xlByRows ou
xlByColumns .[/TD]


[TD="class: mainsection"] SensRecherche [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] XlSearchDirection [/TD]

[TD="class: mainsection"]Direction de la recherche.[/TD]


[TD="class: mainsection"] RespecterCasse [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"] True pour que la recherche respecte la casse. La
valeur par défaut est False .[/TD]


[TD="class: mainsection"] RespecterNbreOctets [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"]S'utilise uniquement si vous avez sélectionné ou installé
la prise en charge des langues codées sur deux octets. True pour que les
caractères codés sur deux octets ne correspondent qu'aux caractères codés sur
deux octets. False pour que les caractères codés sur deux octets
correspondent à leurs équivalents codés sur un octet.[/TD]


[TD="class: mainsection"] FormatRecherche [/TD]

[TD="class: mainsection"]Facultatif[/TD]

[TD="class: mainsection"] Variante [/TD]

[TD="class: mainsection"]Format de la recherche.[/TD]

[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]

[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]

[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]
[TD="class: mainsection"]
[/TD]
 
Dernière édition:
Re : VBA: problème avec la fonction find

Bonjour Gilbert_RGI et merci pour l'aide, mais je ne comprends pas ce que tu veux me dire.

De quels arguments me parlez vous? ceux de la fonction find? je dois avouer que je ne sais pas comment celà fonctionne, et je n'ai pas trouvé d'aide sur le fonctionnement de cette fonction..

Pouvez-vous m'éclairer?
 
Re : VBA: problème avec la fonction find

Celà semble fonctionner, mais j'ai maintenant un autre problème!

La suite de ma macro ne s'exécute plus. A la fin de la recherche, une boite de dialogue s'ouvre, annonçant si la référence existe ou non, puis masque le feuillet "BDD". Celà ne fonctionne plus.
 

Pièces jointes

- 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
8
Affichages
614
Réponses
8
Affichages
577
Réponses
10
Affichages
226
Retour