Fonctions Blank, Coalesce, IsBlank et IsEmpty dans PowerAppsBlank, Coalesce, IsBlank, and IsEmpty functions in PowerApps

Teste si une valeur est vide ou si une table ne contient aucun enregistrement, et fournit un moyen de créer des valeurs vide.Tests whether a value is blank or a table contains no records, and provides a way to create blank values.

Vue d’ensembleOverview

Un espace vide est un espace réservé signifiant l’absence de valeur ou que la valeur est inconnue.Blank is a placeholder for "no value" or "unknown value." Un contrôle Text input est vide si l’utilisateur n’y entre aucun caractère.A Text input control is blank if the user hasn't typed any characters in it. Le même contrôle n’est plus vide dès lors que l’utilisateur y entre un caractère.The same control is no longer blank as soon as the user types a character in it. Certaines sources de données peuvent stocker et retourner des valeurs NULL, qui sont représentés dans PowerApps par une valeur vide.Some data sources can store and return NULL values, which are represented in PowerApps as blank.

Remarque : Actuellement, le stockage de valeurs vides est pris en charge uniquement pour les collections locales.Note: At this time, storing blank values is supported only for local collections. Nous savons que beaucoup de sources de données prennent en charge les valeurs vides (NULL) et nous travaillons à lever cette limitation.We know that many data sources support blank (NULL) values, and we're working to lift this limitation.

N’importe quelle propriété ou valeur calculée peut être vide.Any property or calculated value can be blank. Par exemple, une valeur booléenne est généralement true ou false.For example, a Boolean value normally has one of two values: true or false. Mais la valeur peut également être vide.But in addition to these two, it can also be blank. De même, dans Microsoft Excel, une cellule de feuille de calcul est initialement vide, mais peut contenir les valeurs TRUE ou FALSE, entre autres.This is similar to Microsoft Excel, where a worksheet cell starts out as blank but can hold the values TRUE or FALSE, among others. Le contenu de la cellule peut être supprimé à tout moment, auquel cas elle revient à l’état vide.At any time, the contents of the cell can be removed, and it would return to a blank state.

Une table vide est une table qui ne contient aucun enregistrement.Empty is specific to tables that contain no records. La structure de la table peut être intacte et comporter des titres de colonne, mais la table ne comporte aucune donnée.The table structure may be intact, complete with column names, but no data is in the table. Une table peut être initialement vide, puis être complétée de plusieurs enregistrements (elle n’est donc plus vide), puis les enregistrements peuvent être supprimés (elle est vide de nouveau).A table may start as empty, take on records and no longer be empty, and then have the records removed and again be empty.

DescriptionDescription

La fonction Blank retourne une valeur vide.The Blank function returns a blank value. Utilisez ceci pour stocker une valeur NULL dans une source de données qui prend en charge ces valeurs, en supprimant effectivement toute valeur dans le champ.Use this to store a NULL value in a data source that supports these values, effectively removing any value from the field.

La fonction IsBlank teste si une valeur est vide.The IsBlank function tests for a blank value. On trouve des valeurs vides dans différentes situations, par exemple :Blank values are found in situations such as these:

  • Valeur de retour de la fonction Blank.The return value from the Blank function.
  • Aucune formule n’a été définie pour une propriété de contrôle.A control property has no formula set for it.
  • Aucune valeur n’est entrée dans un contrôle d’entrée de texte, ou aucune sélection n’est effectuée dans une zone de liste.No value is typed into a text-input control, or no selection is made in a listbox. Vous pouvez utiliser la fonction IsBlank pour indiquer que le champ est obligatoire.You can use IsBlank to provide feedback that a field is required.
  • La valeur Len d’une chaîne ne contenant aucun caractère est 0.A string that contains no characters has a Len of 0.
  • Une erreur s’est produite dans une fonction,An error occurred in a function. souvent parce que l’un des arguments de la fonction n’est pas valide.Often, one of the arguments to the function wasn't valid. De nombreuses fonctions retournent un résultat vide si la valeur d’un argument est vide.Many functions return blank if the value of an argument is blank.
  • Les sources de données connectées, comme SQL Server, peuvent utiliser des valeurs « null ».Connected data sources, such as SQL Server, may use "null" values. Ces valeurs apparaissent en tant que valeurs vides dans PowerApps.These values appear as blank in PowerApps.
  • La partie else d’une fonction If n’a pas été spécifiée, et toutes les conditions étaient false.The else portion of an If function wasn't specified, and all conditions were false.
  • Vous avez utilisé la fonction Update mais n’avez pas spécifié de valeur pour toutes les colonnes.You used the Update function but didn't specify a value for all columns. Par conséquent, aucune valeur n’a été placée dans les colonnes que vous n’avez pas spécifiées.As a result, no values were placed in the columns that you didn't specify.

La fonction Coalesce évalue ses arguments dans l’ordre et retourne la première valeur qui n’est pas vide.The Coalesce function evaluates its arguments in order and returns the first value that isn't blank. Utilisez cette fonction pour remplacer une valeur vide par une valeur différente, en laissant les valeurs non vides inchangées.Use this function to replace a blank value with a different value but leave non-blank values unchanged. Si tous les arguments sont vides, la fonction retourne blank.If all of the arguments are blank, then the function returns blank. Tous les arguments de Coalesce doivent être du même type. Par exemple, vous ne pouvez pas mélanger des nombres avec des chaînes de texte.All arguments to Coalesce must be of the same type; for example, you can't mix numbers with text strings. Coalesce( value1, value2 ) est l’équivalent plus concis de If( IsBlank( value1 ) value1, value2 ) et ne nécessite pas l’évaluation de value1 à deux reprises.Coalesce( value1, value2 ) is the more concise equivalent of If( IsBlank( value1 ) value1, value2 ) and doesn't require value1 to be evaluated twice.

La fonction IsEmpty teste si une table contient des enregistrements.The IsEmpty function tests whether a table contains any records. Elle revient à utiliser la fonction CountRows et à vérifier la présence de la valeur zéro.It's equivalent to using the CountRows function and checking for zero. Vous pouvez vérifier s’il y a des erreurs dans une source de données en combinant IsEmpty avec la fonction Errors.You can check for data-source errors by combining IsEmpty with the Errors function.

La valeur de retour pour IsBlank et IsEmpty est un booléen, true ou false.The return value for both IsBlank and IsEmpty is a Boolean true or false.

SyntaxeSyntax

Blank()Blank()

Coalesce( Value1 [, Value2, ... ] )Coalesce( Value1 [, Value2, ... ] )

  • Value(s) : Requis.Value(s) – Required. Valeurs à tester.Values to test. Chaque valeur est évaluée dans l’ordre jusqu’à ce qu’une valeur non vide soit trouvée.Each value is evaluated in order until a non-blank value is found. Les valeurs après la première valeur non vide ne sont pas évaluées.Values after the first non-blank value aren't evaluated.

IsBlank( Value )IsBlank( Value )

  • Value – Requis.Value – Required. Valeur à tester.Value to test.

IsEmpty( Table )IsEmpty( Table )

  • Table - Requis.Table - Required. Table dans laquelle tester la présence d’enregistrements.Table to test for records.

ExemplesExamples

BlankBlank

Remarque : Actuellement, l’exemple suivant fonctionne seulement pour les collections locales.NOTE: At this time, the following example only works for local collections. Nous savons que beaucoup de sources de données prennent en charge les valeurs vides (NULL) et nous travaillons à lever cette limitation.We know that many data sources support blank (NULL) values and We are working to lift this limitation.

  1. Créez une application à partir de zéro et ajoutez un contrôle Button.Create an app from scratch, and add a Button control.
  2. Définissez la propriété OnSelect du bouton sur la formule suivante :Set the button's OnSelect property to this formula:

    ClearCollect( Cities, { Name: "Seattle", Weather: "Rainy" } )ClearCollect( Cities, { Name: "Seattle", Weather: "Rainy" } )

  3. Affichez un aperçu de votre application, cliquez ou appuyez sur le bouton que vous avez ajouté, puis fermez l’aperçu.Preview your app, click or tap the button that you added, and then close Preview.
  4. Dans le menu Fichier, cliquez ou appuyez sur Collections.On the File menu, click or tap Collections.

    La collection Cities apparaît, affichant un enregistrement avec « Seattle » et « Rainy » :The Cities collection appears, showing one record with "Seattle" and "Rainy":

    Collection montrant Seattle avec une météo « Rainy »

  5. Cliquez ou appuyez sur la flèche Précédent pour revenir à l’espace de travail par défaut.Click or tap the back arrow to return to the default workspace.
  6. Ajoutez un contrôle Label et définissez sa propriété Text sur cette formule :Add a Label control, and set its Text property to this formula:

    IsBlank( First( Cities ).Weather )IsBlank( First( Cities ).Weather )

    L’étiquette affiche false, car le champ Weather contient une valeur (« Rainy »).The label shows false because the Weather field contains a value ("Rainy").

  7. Ajoutez un second bouton, puis définissez sa propriété OnSelect sur la formule suivante :Add a second button, and set its OnSelect property to this formula:

    Patch( Cities, First( Cities ), { Weather: Blank() } )Patch( Cities, First( Cities ), { Weather: Blank() } )

  8. Affichez un aperçu de votre application, cliquez ou appuyez sur le bouton que vous avez ajouté, puis fermez l’aperçu.Preview your app, click or tap the button that you added, and then close Preview.

    Le champ Weather du premier enregistrement dans Cities est remplacé par un vide, qui supprime la valeur « Rainy » qui s’y trouvait auparavant.The Weather field of the first record in Cities is replaced with a blank, removing the "Rainy" that was there previously.

    Collection montrant Seattle avec un champ Weather vide

    L’étiquette affiche true, car le champ Weather ne contient plus de valeur.The label shows true because the Weather field no longer contains a value.

CoalesceCoalesce

FormuleFormula DescriptionDescription RésultatResult
Coalesce( Blank(), 1 )Coalesce( Blank(), 1 ) Teste la valeur de retour de la fonction Blank, qui retourne toujours une valeur vide.Tests the return value from the Blank function, which always returns a blank value. Étant donné que le premier argument est vide, l’évaluation se poursuit avec l’argument suivant jusqu’à ce qu’une valeur non vide soit trouvée.Because the first argument is blank, evaluation continues with the next argument until a non-blank value is found. 11
Coalesce( Blank(), Blank(), Blank(), Blank(), 2, 3 )Coalesce( Blank(), Blank(), Blank(), Blank(), 2, 3 ) Coalesce commence au début de la liste d’arguments et évalue chaque argument l’un après l’autre jusqu’à ce qu’une valeur non vide soit trouvée.Coalesce starts at the beginning of the argument list and evaluates each argument in turn until a non-blank value is found. Dans ce cas, les quatre premiers arguments retournent blank, de sorte que l’évaluation passe au cinquième argument.In this case, the first four arguments all return blank, so evaluation continues to the fifth argument. Le cinquième argument n’est pas vide. L’évaluation s’arrête donc ici.The fifth argument is non-blank, so evaluation stops here. La valeur du cinquième argument est retournée et le sixième argument n’est pas évalué.The value of the fifth argument is returned, and the sixth argument isn't evaluated. 22

IsBlankIsBlank

  1. Créez une application à partir de zéro, ajoutez un contrôle d’entrée de texte et nommez-le FirstName.Create an app from scratch, add a text-input control, and name it FirstName.
  2. Ajoutez un libellé et définissez sa propriété Text sur la formule suivante :Add a label, and set its Text property to this formula:

    If( IsBlank( FirstName.Text ), "Le champ Prénom est obligatoire." )If( IsBlank( FirstName.Text ), "First Name is a required field." )

    Par défaut, la propriété Text d’un contrôle d’entrée de texte est définie sur « Text Input ».By default, the Text property of a text-input control is set to "Text input". Comme le contrôle contient une valeur, il n’est pas vide et l’étiquette n’affiche aucun message.Because the property contains a value, it isn't blank, and the label doesn't display any message.

  3. Supprimez tous les caractères du contrôle d’entrée de texte, y compris les espaces.Remove all the characters from the text-input control, including any spaces.

    Comme la propriété Text ne contient plus de caractères, elle est vide et IsBlank( FirstName.Text ) a la valeur true.Because the Text property no longer contains any characters, it's blank, and IsBlank( FirstName.Text ) will be true. Le message indiquant que le champ est obligatoire s’affiche.The required field message is displayed.

Pour plus d’informations sur la façon d’effectuer la validation à l’aide d’autres outils, reportez-vous à la fonction Validate et à Utilisation des sources de données.For information about how to perform validation by using other tools, see the Validate function and working with data sources.

Autres exemples :Other examples:

FormuleFormula DescriptionDescription RésultatResult
IsBlank( Blank() )IsBlank( Blank() ) Teste la valeur de retour de la fonction Blank, qui retourne toujours une valeur vide.Tests the return value from the Blank function, which always returns a blank value. truetrue
IsBlank( "" )IsBlank( "" ) Une chaîne ne contenant aucun caractère.A string that contains no characters. truetrue
IsBlank( "Hello" )IsBlank( "Hello" ) Une chaîne contenant un ou plusieurs caractères.A string that contains one or more characters. falsefalse
IsBlank( AnyCollection )IsBlank( AnyCollection ) Étant donné que la collection existe, elle n’est pas vide, même si elle ne contient aucun enregistrement.Because the collection exists, it isn't blank, even if it doesn't contain any records. Pour vérifier si une collection est vide, utilisez plutôt la fonction IsEmpty.To check for an empty collection, use IsEmpty instead. falsefalse
IsBlank( Mid( "Hello", 17, 2 ) )IsBlank( Mid( "Hello", 17, 2 ) ) Le caractère de début pour Mid se situe après la fin de la chaîne.The starting character for Mid is beyond the end of the string. Le résultat est une chaîne vide.The result is an empty string. truetrue
IsBlank( If( false, false ) )IsBlank( If( false, false ) ) Une fonction If sans ElseResult.An If function with no ElseResult. Étant donné que la condition est toujours false, cette fonction If retourne toujours une valeur vide.Because the condition is always false, this If always returns blank. truetrue

IsEmptyIsEmpty

  1. Créez une application à partir de zéro et ajoutez un contrôle Button.Create an app from scratch, and add a Button control.
  2. Définissez la propriété OnSelect du bouton sur la formule suivante :Set the button's OnSelect property to this formula:

    Collect( IceCream, { Flavor: "Strawberry", Quantity: 300 }, { Flavor: "Chocolate", Quantity: 100 } )Collect( IceCream, { Flavor: "Strawberry", Quantity: 300 }, { Flavor: "Chocolate", Quantity: 100 } )

  3. Affichez un aperçu de votre application, cliquez ou appuyez sur le bouton que vous avez ajouté, puis fermez l’aperçu.Preview your app, click or tap the button that you added, and then close Preview.

    Une collection nommée IceCream est créée et elle contient ces données :A collection named IceCream is created and contains this data:

    Cette collection contient deux enregistrements et n’est pas vide.This collection has two records and isn't empty. IsEmpty( IceCream ) retourne la valeur false et CountRows( IceCream ) retourne la valeur 2.IsEmpty( IceCream ) returns false, and CountRows( IceCream ) returns 2.

  4. Ajoutez un second bouton et définissez sa propriété OnSelect sur la formule suivante :Add a second button, and set its OnSelect property to this formula:

    Clear( IceCream )Clear( IceCream )

  5. Affichez un aperçu de votre application, cliquez ou appuyez sur le second bouton, puis fermez l’aperçu.Preview your app, click or tap the second button, and then close Preview.

    La collection est maintenant vide :The collection is now empty:

    La fonction Clear supprime tous les enregistrements d’une collection, ce qui produit une collection vide.The Clear function removes all the records from a collection, resulting in an empty collection. IsEmpty( IceCream ) retourne la valeur true et CountRows( IceCream ) retourne la valeur 0.IsEmpty( IceCream ) returns true, and CountRows( IceCream ) returns 0.

Vous pouvez également utiliser la fonction IsEmpty pour tester si une table calculée est vide, comme le montrent ces exemples :You can also use IsEmpty to test whether a calculated table is empty, as these examples show:

FormuleFormula DescriptionDescription RésultatResult
IsEmpty( [ 1, 2, 3 ] )IsEmpty( [ 1, 2, 3 ] ) La table à une seule colonne contient trois enregistrements et, par conséquent, n’est pas vide.The single-column table contains three records and, therefore, isn't empty. falsefalse
IsEmpty( [ ] )IsEmpty( [ ] ) La table à une seule colonne ne contient aucun enregistrement. Elle est donc vide.The single-column table contains no records and is empty. truetrue
IsEmpty( Filter( [ 1, 2, 3 ], Value > 5 ) )IsEmpty( Filter( [ 1, 2, 3 ], Value > 5 ) ) La table à une seule colonne ne contient aucune valeur supérieure à 5.The single-column table contains no values that are greater than 5. Le résultat du filtre ne contient aucun enregistrement et est donc vide.The result from the filter doesn't contain any records and is empty. truetrue