Limiter recherche à 3 colonnes (sur 9)

Fermé
Victou Messages postés 37 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 19 avril 2016 - 19 avril 2016 à 10:25
thev Messages postés 1883 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 6 novembre 2024 - 20 avril 2016 à 18:31
Bonjour à tous,

je reviens sur ce forum pour le glossaire sur lequel je suis en train de travailler sous excel.

Les termes en français se trouvent en colonne A, les termes en anglais en colonne D, et les termes en espagnol en colonne G. Les autres colonnes sont destinées aux définitions et aux domaines de spécialité. En voici une illustration : http://www.cjoint.com/c/FDtirC21NzW

Un bouton recherche permet de rechercher n'importe quel terme dans le glossaire. La macro est la suivante :

Sub Rechercher()

Application.Dialogs(xlDialogFormulaFind).Show "", 2, , 2

End Sub

J'aimerais limiter cette fonction recherche aux colonnes A, D et G, mais je ne m'y connais pas assez en macro. Que faut-il ajouter à cette macro ?

Merci d'avance :-)

2 réponses

thev Messages postés 1883 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 6 novembre 2024 691
19 avril 2016 à 10:55
Sub Rechercher()

Range("A:A, D:D, G:G").Select
Application.Dialogs(xlDialogFormulaFind).Show "", 2, , 2

End Sub

1
Victou Messages postés 37 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 19 avril 2016 1
19 avril 2016 à 14:41
Merci pour cette réponse, Thev.

Mais cette macro ne permet que de sélectionner les colonnes, et non pas de restreindre la recherche, non ? Par exemple, une recherche du mot "échéance" renvoie d'abord aux cellules A2 et A3, certes, mais aussi à la cellule B3 (définition).
0
thev Messages postés 1883 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 6 novembre 2024 691 > Victou Messages postés 37 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 19 avril 2016
19 avril 2016 à 15:22
La recherche ne peut s'effectuer que dans les colonnes sélectionnées. "échéance" ne peut donc pas être trouvée en cellule B3.
0
DSI0499 Messages postés 17 Date d'inscription samedi 9 mars 2013 Statut Membre Dernière intervention 20 avril 2016
20 avril 2016 à 12:25
Bonjour,
je suis intéressé par le sujet.
Je fais le même constat de Victou. La recherche sur Échéance remonte trois occurrences : deux en colonne A et une en colonne B.
Lors du lancement de la macro, les colonnes se sélectionnent bien, mais la recherche n'en tient pas compte.
Manquerait-il un paramètre dans Application.Dialogs pour que la recherche cible bien uniquement les colonnes A, D et G ?
Merci
0
thev Messages postés 1883 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 6 novembre 2024 691
20 avril 2016 à 18:31
Le problème vient du fait que l'option classeur/feuille n'est pas disponible en VBA. Lorsqu'on choisit l'option "feuille" (classeur est activé par défaut), la recherche est bien limitée à la sélection.

La seule solution que je vois, est de masquer les colonnes où l'on ne veut pas effectuer la recherche, puis de les réafficher après recherche.
Sub Rechercher()

Range("B:C, E:F").EntireColumn.Hidden = True
Application.Dialogs(xlDialogFormulaFind).Show "", 2, , 2
Columns.EntireColumn.Hidden = False

End Sub
1