Aller au contenu principal
Version : 21

VP Find

VP Find ( rangeObj : Object ; searchValue : Text ) : Object
VP Find ( rangeObj : Object ; searchValue : Text ; searchCondition : Object ) : Object
VP Find ( rangeObj : Object ; searchValue : Text ; searchCondition : Object ; replaceValue : Text ) : Object

ParamètresTypeDescription
rangeObjObject->Objet plage
searchValueText->Valeur de recherche
searchConditionObject->Objet contenant la/les condition(s) de recherche
replaceValueText->Valeur de remplacement
RésultatObject<-Objet plage

Description

La commande VP Find recherche le paramètre rangeObj pour la searchValue. Des paramètres facultatifs peuvent être utilisés pour affiner la recherche et/ou remplacer les résultats trouvés.

Dans le paramètre rangeObj, passez un objet contenant une plage à rechercher.

Le paramètre searchValue vous permet de passer le texte à rechercher dans rangeObj.

Vous pouvez passer le paramètre optionnel searchCondition pour préciser la manière dont la recherche est effectuée. Les propriétés suivantes sont prises en charge :

PropriétéTypeDescription
afterColumnIntegerLe numéro de la colonne située juste avant la colonne de départ de la recherche. Si rangeObj est une plage combinée, le numéro de colonne indiqué doit provenir de la première plage. Valeur par défaut : -1 (début de rangeObj)
afterRowIntegerLe numéro de la colonne située juste avant la colonne de départ de la recherche. Le numéro de la colonne située juste avant la colonne de départ de la recherche. Valeur par défaut : -1 (début de rangeObj)
allBoolean
  • True - Toutes les cellules de rangeObj correspondant à searchValue sont renvoyées
  • False - (valeur par défaut) Seule la première cellule de rangeObj correspondant à searchValue est renvoyée
  • flagsInteger
    vk find flag exact matchLe contenu entier de la cellule doit correspondre exactement à la valeur recherchée
    vk find flag ignore caseLes majuscules et les minuscules sont considérées comme identiques. peuvent être utilisé dans la chaîne de recherche. Les caractères joker peuvent être utilisés dans toute comparaison de chaînes de caractères pour correspondre à un nombre quelconque de caractères :
  • * pour zéro ou plusieurs caractères (par exemple, la recherche de « bl* » permet de trouver « bl », « black » ou « blob »)
  • ? pour un seul caractère (par exemple, une recherche sur « h?t » permet de trouver « hot » ou « hit »
  • vk find flag exact matchThe entire content of the cell must completely match the search value
    vk find flag ignore caseCapital and lower-case letters are considered the same.Ex : "a" est la même chose que "A".
    Ces options peuvent être combinées. Par exemple: $search.flags:=vk find flag use wild cards+vk find flag ignore case
    orderInteger
    vk find order by columnsLa recherche s'effectue par colonnes. Chaque colonne d'une ligne est parcourue avant que la recherche ne passe à la ligne suivante (par défaut)
    vk find order by columnsThe search is performed by columns.Chaque ligne d'une colonne est recherchée avant que la recherche ne passe à la colonne suivante.
    targetInteger
    vk find target formulaLa recherche est effectuée dans la formule de cellule
    vk find target tagLa recherche est effectuée dans la balise de cellule
    vk find target textLa recherche est effectuée dans le texte de la cellule (défaut)

    Ces options peuvent être combinées. Par exemple ::$search.target:=vk find target formula+vk find target text

    Dans le paramètre optionnel replaceValue, vous pouvez passer du texte pour remplacer toute instance du texte dans la searchValue trouvée dans rangeObj.

    Objet retourné

    La fonction retourne un objet de plage décrivant chaque valeur de recherche trouvée ou remplacée. Un objet de plage vide est retourné si aucun résultat n'est trouvé.

    Exemple 1

    Pour trouver la première cellule contenant le mot "Total" :

    var $range;$result : Object

    $range:=VP All("ViewProArea")

    $result:=VP Find($range;"Total")

    Exemple 2

    Pour trouver "Total" et le remplacer par "Grand Total" :

    var $range;$condition;$result : Object

    $range:=VP All("ViewProArea")

    $condition:=New object
    $condition.target:=vk find target text
    $condition.all:=True //Search entire document
    $condition.flags:=vk find flag exact match

    // Remplacer les cellules contenant uniquement 'Total' dans la feuille actuelle par "Grand Total".


    $result:=VP Find($range;"Total";$condition;"Grand Total")

    // Vérifier si l'objet de plage est vide
    If($result.ranges.length=0)
    ALERT("No result found")
    Else
    ALERT($result.ranges.length+" results found")
    End if