UDF > Excel >


_Excel_RangeFind

Cherche des concordances de cellules dans une plage ou un classeur et retourne un tableau d'informations sur les cellules trouv�es

#include <Excel.au3>
_Excel_RangeFind ( $oWorkbook, $sSearch [, $vRange = Default [, $iLookIn = $xlValues [, $iLookAt = $xlPart [, $bMatchcase = False]]]] )

Param�tres

$oWorkbook Objet Workbook
$sSearch La cha�ne de recherche. Peut �tre une cha�ne (les jokers - *?~ - peuvent �tre utilis�s) ou tout autre type de donn�es Excel. Voir Remarques
$vRange [optionnel] Un objet plage, une plage au format $xlA1 (cha�ne) ou le mot-cl� Default pour rechercher dans toutes les feuilles du classeur (par d�faut = mot-cl� Default)
$iLookIn [optionnel] Sp�cifie o� chercher. Peut �tre toute valeur de l'�num�ration XLFindLookIn (par d�faut = $xlValues​)
$iLookAt [optionnel] Indique si le texte de recherche doit correspondre � l'ensemble ou � une partie. Peut �tre n'importe quoi de l'�num�ration XLLookAt (par d�faut = $xlPart)
$bMatchcase [optionnel] True = sensible � la casse, Faux = insensibles � la casse (par d�faut, False)

Valeur de retour

Succ�s: Retourne un tableau � deux dimensions index�es � partir de z�ro avec les informations suivantes:
    0 - Nom de la feuille de calcul
    1 - Nom de la cellule
    2 - Adresse de la cellule
    3 - Valeur de la cellule
    4 - Formule de la cellule
    5 - Commentaire de la cellule
�chec: Retourne 0 et d�finit @error <> 0.
@error: 1 - $oWorkbook n'est pas un objet ou n'est pas un objet classeur
2 - $sSearch est vide
3 - $vRange n'est pas valide. @extended contient le code d'erreur COM
4 - Erreur renvoy�e par la m�thode Find. @extended contient le code d'erreur COM

Remarque

Cette fonction reproduit la fonctionnalit� Ctrl+F d'Excel, sauf qu'elle ajoute les cellules comment�es dans le r�sultat.
Excel reconna�t les caract�res g�n�riques suivants :
? (point d'interrogation ) - Tout caract�re simple
* (ast�risque) - N'importe quel nombre de caract�res
~ (tilde), suivie par, ?, *, ou ~ - Point d'interrogation, ast�risque ou tilde

Lorsque $vRange est sp�cifi� en tant que plage A1 (string) alors la feuille active du classeur $oWorkbook est recherch�e.

En relation

_Excel_RangeReplace

Voir aussi

Consultez http://office.microsoft.com/en-us/excel-help/wildcard-characters-HP005203612.aspx.

Exemples

Exemple 1

#include <Array.au3>
#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Cr�e un objet Excel et ouvre un classeur
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; Trouve toutes les occurrences de la valeur '37000' (concordance partielle)
Local $aResult = _Excel_RangeFind($oWorkbook, "37000")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple 1", "Erreur lors de la recherche dans la plage." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple 1", "Trouve toutes les occurrences de la valeur '37000' (concordance partielle)." & @CRLF & "Donn�e recherch�e avec succ�s.")
_ArrayDisplay($aResult, "UDF Excel: _Excel_RangeFind Exemple 1", "", 0, "|", "Sheet|Name|Cell|Value|Formula|Comment")


Exemple 2

#include <Array.au3>
#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Cr�e un objet Excel et ouvre un exemple de classeur
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; Trouve toutes les occurrences de la cha�ne "=C10*10" dans les formules, avec une concordance exacte
Local $aResult = _Excel_RangeFind($oWorkbook, "=C10*10", "A1:G15", $xlFormulas, $xlWhole)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple 2", "Erreur lors de la recherche de la plage." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind-Exemple 2", "Trouve toutes les occurrences de la cha�ne '=C10*10' dans les formules, avec une concordance exacte." & @CRLF & "Donn�e recherch�e avec succ�s.")
_ArrayDisplay($aResult, "UDF Excel: _Excel_RangeFind Exemple 2", "", 0, "|", "Sheet|Name|Cell|Value|Formula|Comment")


Exemple 3

#include <Array.au3>
#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Cr�e un objet Excel et ouvre un classeur exemple
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; Trouve toutes les occurrences de la cha�ne "test" dans les commentaires
Local $aResult = _Excel_RangeFind($oWorkbook, "test", Default, $xlComments)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple 3", "Erreur lors de la recherche de la plage." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind-Exemple 3", "Trouve toutes les occurrences de la cha�ne 'test' dans les commentaires." & @CRLF & "Donn�e recherch�e avec succ�s.")
_ArrayDisplay($aResult, "UDF Excel: _Excel_RangeFind Exemple 3", "", 0, "|", "Sheet|Name|Cell|Value|Formula|Comment")


Exemple 4

#include <Array.au3>
#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Cr�e un objet Excel et ouvre un classeur exemple
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind-Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; Trouve toutes les valeurs avec "Story" � la fin en utilisant des jokers et une concordance exacte
Local $aResult = _Excel_RangeFind($oWorkbook, "* Story", Default, Default, $xlWhole)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind-Exemple 4", "Erreur lors de la recherche de la plage." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeFind Exemple 4", "Trouve toutes les valeurs avec 'Story' � la fin en utilisant des jokers et une concordance exacte." & @CRLF & "Donn�e recherch�e avec succ�s.")
_ArrayDisplay($aResult, "UDF Excel: _Excel_RangeFind Exemple 4", "", 0, "|", "Sheet|Name|Cell|Value|Formula|Comment")