Rechercher une chaîne dans une plage à l’aide de l’API JavaScript Excel
Cet article fournit un exemple de code qui recherche une chaîne dans une plage à l’aide de l’API JavaScript Excel. Pour obtenir la liste complète des propriétés et méthodes prises en charge par l’objet Range
, voir Classe Excel.Range.
Remarque
L’API JavaScript Excel ne comprend pas d’objet ou de classe « Cellule ». L’API JavaScript Excel définit plutôt toutes les cellules Excel comme objetsRange
. Une cellule individuelle dans l’interface utilisateur d’Excel se traduit par un objetRange
avec une cellule dans l’API JavaScript Excel. Un objet Range
peut également contenir plusieurs cellules contiguës. Consultez Travailler avec des cellules de calcul à l’aide de l’API JavaScript Excel pour en savoir plus.
Mettre en correspondance une chaîne dans une plage
L’objet Range
dispose d’une méthodefind
pour rechercher une chaîne spécifiée dans la plage. Elle renvoie la plage de la première cellule avec le texte correspondant.
L’exemple de code suivant trouve la première cellule contenant une valeur égale à la chaîne Nourriture et connecte son adresse à la console. Notez que find
génère une erreur ItemNotFound
si la chaîne spécifiée n’existe pas dans la plage. Si vous pensez que la chaîne spécifiée peut ne pas exister dans la plage, utilisez la méthodefindAllOrNullObject à la place, pour que votre code gère ce scénario plus facilement.
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getItem("Sample");
let table = sheet.tables.getItem("ExpensesTable");
let searchRange = table.getRange();
let foundRange = searchRange.find("Food", {
completeMatch: true, // Match the whole cell value.
matchCase: false, // Don't match case.
searchDirection: Excel.SearchDirection.forward // Start search at the beginning of the range.
});
foundRange.load("address");
await context.sync();
console.log(foundRange.address);
});
Lorsque la méthode find
est appelée sur une plage représentant une cellule simple, la feuille de calcul entière est recherchée. La recherche commence à cette cellule et continue dans la direction spécifiée par SearchCriteria.searchDirection
, revenant à la ligne à la fin de la feuille de calcul si nécessaire.