Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Syntaxe
List.PositionOfAny(
list as list,
values as list,
optional occurrence as nullable number,
optional equationCriteria as any
) as any
À propos
Retourne le décalage auquel un élément de la liste spécifiée de valeurs apparaît dans une liste. Retourne -1 si aucune occurrence n’est trouvée.
-
list: liste à rechercher. -
values: liste de valeurs à rechercher dans la liste d’origine. -
occurrence: (Facultatif) Occurrence spécifique à signaler. Cette valeur peut être Occurrence.First, Occurrence.Last ou Occurrence.All. Sioccurrencen'est pas spécifié,Occurrence.Firstest utilisé. -
equationCriteria: (Facultatif) Spécifie la façon dont l’égalité est déterminée lors de la comparaison des valeurs. Ce paramètre peut être une fonction de sélecteur de clé, une fonction de comparateur ou une liste contenant à la fois un sélecteur de clé et un comparateur.
Exemple 1
Rechercher la première position dans la liste {1, 2, 3} à laquelle la valeur 2 ou 3 apparaît.
Utilisation
List.PositionOfAny({1, 2, 3}, {2, 3})
Sortie
1
Exemple 2
Recherchez la position dans la liste de toutes les instances de dates comprises entre 2022 ou 2023.
Utilisation
let
Source = {
#date(2021, 5, 10),
#date(2022, 6, 28),
#date(2023, 7, 15),
#date(2025, 12, 31),
#date(2022, 4, 8),
#date(2024, 3, 20)
},
YearList = List.Transform(Source, each Date.Year(_)),
TargetYear = {2022, 2023},
FindPositions = List.PositionOfAny(YearList, TargetYear, Occurrence.All)
in
FindPositions
Sortie
{1, 2, 4}
Exemple 3
Recherchez la position dans la liste de la dernière occurrence du mot chien ou chat, en ignorant la casse.
Utilisation
let
Source = List.PositionOfAny(
{"dog", "cat", "DOG", "pony", "bat", "rabbit", "dOG"},
{"dog", "cat"},
Occurrence.Last,
Comparer.OrdinalIgnoreCase
)
in
Source
Sortie
6
Exemple 4
Recherchez n’importe quelle position dans la liste qui se trouve dans deux unités du nombre 17 ou 28.
Utilisation
let
Source = { 10, 15, 20, 25, 30 },
Position = List.PositionOfAny(
Source,
{17, 28},
Occurrence.All,
(x, y) => Number.Abs(x - y) <= 2
)
in
Position
Sortie
{1, 4}