Re : comparaison
bonsoir
Mon ami Pierrot etant momentanement absent ,je prend la plume qu'il m'a prétée
Voici quelques renseignements puisés a une source sure
algorihme de recherche:
Menu Outils -> Macro ->Visual Basic Editor
puis touche F1, Onglet Index
ecrire Find et Cliquer sur rechercher
Find, méthode
Recherche une information spécifique dans une plage et renvoie un objet
Range qui représente la première cellule où cette information apparaît. Cette méthode renvoie la valeur
Nothing si l'information n'est pas trouvée. N'affecte ni la sélection ni la cellule active.
Pour plus d'informations sur la fonction de feuille de calcul
Find de Visual Basic, consultez
Utilisation des fonctions de feuille de calcul dans Visual Basic.
Syntaxe
expression.
Find(What,
After,
LookIn,
LookAt,
SearchOrder,
SearchDirection,
MatchCase,
MatchByte)
expression Obligatoire. Expression qui renvoie un objet
Range.
What Argument de type
Variant obligatoire. L'élément à rechercher. Il peut s'agir d'une chaîne de caractères ou de tout autre type de données Microsoft Excel.
After Argument de type
Variant facultatif. La 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
After doit désigner une seule cellule de la plage et que la recherche commence
après cette cellule ; la recherche ne porte pas sur la cellule spécifiée avant que la méthode y revienne avoir exploré la totalité de la plage de recherche. 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.
LookIn Argument de type
Variant facultatif. Il peut s'agir de l'une des constantes
XlFindLookIn suivantes :
xlFormulas,
xlValues ou
xlComments.
LookAt Argument de type
Variant facultatif. Il peut s'agir de l'une des constantes
XlLookAt suivantes :
xlPart ou
xlWhole.
SearchOrder Argument de type
Variant facultatif. Il peut s'agir de l'une des constantes
XlSearchOrder suivantes :
xlByColumns ou
xlByRows.
SearchDirection Argument de type
Variant facultatif. Il peut s'agir de l'une des constantes
XlSearchDirection suivantes :
xlNext ou
xlPrevious. La constante par défaut est
xlNext.
MatchCase Argument de type
Variant facultatif. Affectez-lui la valeur
True pour que la recherche respecte la casse. La valeur par défaut est
False.
MatchByte Argument de type
Variant facultatif. Cet argument est utilisé uniquement si vous avez sélectionné ou installé la prise en charge des langues codées sur deux octets. Affectez-lui la valeur
True pour que les caractères codés sur deux octets correspondent uniquement à des caractères codés sur deux octets. Affectez-lui la valeur
False pour que les caractères codés sur deux octets correspondent à leurs équivalents codés sur un octet.
Remarques
Les paramètres des arguments
LookIn,
LookAt,
SearchOrder et
MatchByte sont enregistrés chaque fois que vous utilisez cette méthode. Si vous ne spécifiez aucun paramètre pour ces arguments lors du prochain appel de la méthode, les paramètres enregistrés sont utilisés. Le fait de définir les paramètres de ces arguments modifie les paramètres de la boîte de dialogue
Rechercher, ce qui a pour effet de changer les paramètres enregistrés qui sont utilisés lorsque vous ne spécifiez pas les arguments. Pour éviter toute ambiguïté, définissez ces arguments de façon explicite chaque fois que vous utilisez cette méthode.
Les méthodes
FindNext et
FindPrevious permettent de répéter la recherche.
Lorsque la recherche atteint la fin de la plage de recherche spécifiée, elle revient au début de cette plage. Pour arrêter une recherche lorsqu'elle revient au point de départ, enregistrez l'adresse de la première cellule trouvée, puis comparez l'adresse de chaque cellule ultérieurement trouvée avec l'adresse enregistrée.
Pour effectuer des recherches plus complexes, utilisez une instruction
For Each...Next avec l'opérateur
Like. Par exemple, l'exemple de code suivant montre comment rechercher toutes les cellules de la plage A1:C5 qui utilisent une police dont le nom commence par les lettres « Cour ». Lorsque Microsoft Excel trouve une cellule correspondante, il lui affecte la police Times New Roman.
For Each c In [A1:C5] If c.Font.Name Like "Cour*" Then c.Font.Name = "Times New Roman" End IfNext