PowerBlocks
ToolsExpression Cheatsheet

Aide-mémoire des expressions

81 expressions — cliquez pour copier l'exemple

text1 & text2TextePopulaire

Concatène deux chaînes de texte (opérateur &)

FirstName & " " & LastName
Text(value, format)TextePopulaire

Convertit une valeur en texte avec un format optionnel

Text(Today(); "dd/mm/yyyy")
IsBlank(value)TextePopulaire

Retourne vrai si la valeur est vide ou une chaîne vide

If(IsBlank(TextInput1.Text); "Empty"; "OK")
Now()Date & HeurePopulaire

Retourne la date et l'heure actuelles

Text(Now(); "dd/mm/yyyy hh:mm")
Today()Date & HeurePopulaire

Retourne la date actuelle (sans heure)

Text(Today(); "dd/mm/yyyy")
DateAdd(date, n, unit)Date & HeurePopulaire

Ajoute un intervalle à une date

DateAdd(Today(); 30; TimeUnit.Days)
DateDiff(date1, date2, unit)Date & HeurePopulaire

Retourne la différence entre deux dates

DateDiff(StartDate; EndDate; TimeUnit.Days)
Filter(table, condition)CollectionsPopulaire

Retourne les lignes correspondant à la condition

Filter(Employees; Department = "HR")
Sort(table, column)CollectionsPopulaire

Trie une table par une colonne (ordre croissant)

Sort(Products; Name)
LookUp(table, condition)CollectionsPopulaire

Retourne le premier enregistrement correspondant à une condition

LookUp(Users; Email = User().Email)
Search(table, text, col)CollectionsPopulaire

Trouve les enregistrements où une colonne contient le texte

Search(Contacts; SearchInput.Text; "Name")
CountRows(table)CollectionsPopulaire

Retourne le nombre de lignes d'une table

CountRows(Filter(Tasks; Status = "Open"))
Collect(col, record)CollectionsPopulaire

Ajoute des enregistrements à une collection

Collect(MyCart; {Product: "Item A"; Qty: 1})
ClearCollect(col, table)CollectionsPopulaire

Vide et repeuple une collection

ClearCollect(LocalItems; SharePointList)
Remove(col, record)CollectionsPopulaire

Supprime un enregistrement spécifique d'une collection

Remove(MyCart; ThisItem)
Patch(source, record, changes)CollectionsPopulaire

Crée ou modifie un enregistrement dans une source de données

Patch(Employees; LookUp(Employees; ID=1); {Name: "Alice"})
ForAll(table, formula)CollectionsPopulaire

Évalue une formule pour chaque enregistrement d'une table

ForAll(Items; Collect(Names; {Name: ThisRecord.Name}))
Distinct(table, column)CollectionsPopulaire

Retourne les valeurs uniques d'une colonne

Distinct(Products; Category)
IsEmpty(table)CollectionsPopulaire

Retourne vrai si la table ne contient aucun enregistrement

If(IsEmpty(MyCart); "Empty cart"; "Items in cart")
Sum(table, column)CollectionsPopulaire

Retourne la somme d'une colonne numérique

Sum(Orders; TotalPrice)
If(condition, true, false)LogiquePopulaire

Retourne une valeur selon une condition

If(Score >= 50; "Pass"; "Fail")
Switch(val, case1, r1, ...)LogiquePopulaire

Retourne une valeur selon les cas correspondants

Switch(Status; "Active"; Green; "Inactive"; Red; Gray)
Coalesce(val1, val2, ...)LogiquePopulaire

Retourne la première valeur non vide

Coalesce(User.Department; "Unknown")
IfError(value, fallback)LogiquePopulaire

Retourne la valeur de secours si la valeur est une erreur

IfError(Patch(DS; defaults; record); Notify("Error"; NotificationType.Error))
With({alias: expr, ...}, formula)LogiquePopulaire

Évalue une formule dans le contexte d'alias nommés. Évite de répéter des expressions longues, améliore la lisibilité. À considérer comme des variables locales limitées à une seule expression.

With( { fullName: FirstName & " " & LastName; age: DateDiff(BirthDate; Today(); TimeUnit.Years) }; fullName & " (" & age & " years old)" )
With() — avoid re-evaluating expensive callsLogiquePopulaire

With() est idéal quand vous devez utiliser le résultat d'un LookUp() ou d'une formule complexe plusieurs fois sans l'appeler deux fois.

With( { record: LookUp(Accounts; accountid = Gallery1.Selected.accountid) }; If( record.Status.Value = "Active"; Patch(Accounts; record; { LastSeen: Now() }); Notify("Account is inactive"; NotificationType.Warning) ) )
Navigate(screen, transition)NavigationPopulaire

Navigue vers un autre écran

Navigate(HomeScreen; ScreenTransition.Fade)
Set(variable, value)NavigationPopulaire

Définit une variable globale

Set(CurrentUser; User().FullName)
UpdateContext({key: val})NavigationPopulaire

Définit une variable de contexte locale

UpdateContext({IsMenuOpen: !IsMenuOpen})
Notify(message, type)NavigationPopulaire

Affiche une notification bannière

Notify("Saved!"; NotificationType.Success)
SubmitForm(form)NavigationPopulaire

Valide et soumet un formulaire

SubmitForm(Form1)
NewForm(form)NavigationPopulaire

Met un formulaire en mode création d'enregistrement

NewForm(Form1)
EditForm(form)NavigationPopulaire

Met un formulaire en mode édition de l'enregistrement sélectionné

EditForm(Form1)
Len(text)Texte

Retourne le nombre de caractères d'une chaîne

Len("Hello") // 5
Left(text, n)Texte

Retourne les n premiers caractères depuis la gauche

Left("Hello World"; 5) // "Hello"
Right(text, n)Texte

Retourne les n derniers caractères depuis la droite

Right("Hello World"; 5) // "World"
Mid(text, start, n)Texte

Retourne n caractères à partir d'une position

Mid("Hello World"; 7; 5) // "World"
Lower(text)Texte

Convertit le texte en minuscules

Lower("HELLO") // "hello"
Upper(text)Texte

Convertit le texte en majuscules

Upper("hello") // "HELLO"
Trim(text)Texte

Supprime les espaces en début et fin de texte

Trim(" Hello ") // "Hello"
Concatenate(...)Texte

Fusionne plusieurs valeurs texte

Concatenate("Hello"; " "; "World") // "Hello World"
Substitute(text, old, new)Texte

Remplace les occurrences d'une sous-chaîne

Substitute("Hello World"; "World"; "PA") // "Hello PA"
Find(findText, inText)Texte

Retourne la position d'un texte dans un autre (base 1)

Find("World"; "Hello World") // 7
StartsWith(text, start)Texte

Vérifie si le texte commence par une chaîne donnée

StartsWith("Hello"; "He") // true
EndsWith(text, end)Texte

Vérifie si le texte se termine par une chaîne donnée

EndsWith("Hello"; "lo") // true
Split(text, separator)Texte

Découpe le texte en une table à une colonne

Split("a,b,c"; ",") // table with a; b; c
Value(text)Texte

Convertit une chaîne de texte en nombre

Value("42") // 42
Year(date)Date & Heure

Extrait l'année d'une date

Year(Today()) // 2026
Month(date)Date & Heure

Extrait le mois d'une date (1–12)

Month(Today()) // 4
Day(date)Date & Heure

Extrait le jour du mois d'une date

Day(Today()) // 12
Hour(datetime)Date & Heure

Extrait l'heure d'une date/heure (0–23)

Hour(Now())
Weekday(date)Date & Heure

Retourne le jour de la semaine (1=dimanche par défaut)

Weekday(Today())
Date(year, month, day)Date & Heure

Crée une date à partir de l'année, du mois et du jour

Date(2026; 12; 31)
SortByColumns(table, col, order)Collections

Trie avec un ordre de tri explicite

SortByColumns(Items; "Name"; SortOrder.Ascending)
First(table)Collections

Retourne le premier enregistrement d'une table

First(SortByColumns(Items; "Date")).Name
Last(table)Collections

Retourne le dernier enregistrement d'une table

Last(Gallery1.AllItems).Value
FirstN(table, n)Collections

Retourne les n premiers enregistrements d'une table

FirstN(Sort(Items; Date); 5)
Clear(collection)Collections

Supprime tous les enregistrements d'une collection

Clear(MyCart)
AddColumns(table, col, formula)Collections

Retourne une table avec une nouvelle colonne calculée

AddColumns(Products; "Total"; Price * Quantity)
GroupBy(table, col, group)Collections

Groupe les lignes d'une table par la valeur d'une colonne

GroupBy(Sales; "Region"; "Items")
Ungroup(table, col)Collections

Inverse une opération GroupBy

Ungroup(GroupedSales; "Items")
Average(table, column)Collections

Retourne la moyenne d'une colonne numérique

Average(Scores; Value)
Max(table, column)Collections

Retourne la valeur maximale d'une colonne

Max(Sales; Amount)
Min(table, column)Collections

Retourne la valeur minimale d'une colonne

Min(Temperatures; Value)
And(cond1, cond2)Logique

Retourne vrai si les deux conditions sont vraies (aussi : &&)

And(Age >= 18; IsVerified)
Or(cond1, cond2)Logique

Retourne vrai si l'une des conditions est vraie (aussi : ||)

Or(IsAdmin; IsManager)
Not(condition)Logique

Inverse une valeur booléenne (aussi : !)

Not(IsBlank(TextInput1.Text))
IsError(value)Logique

Retourne vrai si la valeur est une erreur

If(IsError(Value(TextInput1.Text)); "Invalid"; "OK")
Round(number, digits)Math

Arrondit à un nombre de décimales spécifié

Round(3.14159; 2) // 3.14
RoundUp(number, digits)Math

Arrondit toujours vers le haut

RoundUp(3.01; 0) // 4
RoundDown(number, digits)Math

Arrondit toujours vers le bas (tronque)

RoundDown(3.99; 0) // 3
Abs(number)Math

Retourne la valeur absolue

Abs(-42) // 42
Mod(number, divisor)Math

Retourne le reste après division

Mod(10; 3) // 1
Power(base, exp)Math

Retourne la base élevée à un exposant

Power(2; 8) // 256
Sqrt(number)Math

Retourne la racine carrée

Sqrt(144) // 12
Int(number)Math

Arrondit vers le bas à l'entier le plus proche

Int(3.9) // 3
Rand()Math

Retourne un nombre aléatoire entre 0 et 1

Round(Rand() * 100; 0) // random 0–100
RandBetween(min, max)Math

Retourne un entier aléatoire dans une plage

RandBetween(1; 6) // dice roll
Back()Navigation

Retourne à l'écran précédent

Back()
Launch(url)Navigation

Ouvre une URL ou lance une autre application

Launch("https://example.com")
ResetForm(form)Navigation

Réinitialise un formulaire à son état par défaut

ResetForm(Form1)