Ajoutez des dates et des heures et mettez-les en forme pour afficher le niveau de détail adapté ou pour refléter vos paramètres régionaux. Calculez la durée entre deux dates ou une date correspondant à un certain laps de temps avant ou après une date que vous spécifiez. Convertissez des dates en valeurs distinctes, ou à partir de valeurs distinctes, exprimées en jours, en mois et en années et convertissez des heures en valeurs distinctes, ou à partir de valeurs distinctes, exprimée en heures, en minutes et en secondes.

Par exemple, ajoutez des données d’utilisateurs concernant des transactions boursières ou des réunions clients, des données d’une source externe ou des données d’une autre application créée dans PowerApps. Si ces données incluent des heures, jusqu’à la milliseconde, arrondissez-les à la minute la plus proche pour plus de simplicité. Calculez le nombre de jours restants avant un jalon important. Si vous souhaitez planifier des réunions clients tous les cinq jours, calculez automatiquement ces dates. Si le 10 mai 1985 est stocké dans des champs distincts pour le jour, le mois et l’année, regroupez-les en une seule valeur. À l’inverse, divisez chaque date en valeurs distinctes si votre application les gère séparément.

Conditions préalables

  • Inscrivez-vous à PowerApps, installez-le, ouvrez-le, puis connectez-vous en fournissant les informations d’identification que vous avez utilisées pour vous inscrire.
  • Créez une application ou ouvrez une application existante dans PowerApps.
  • Découvrez comment configurer un contrôle dans PowerApps.

Afficher du texte dans un contrôle de zone de texte

Affichez du texte dans un contrôle Text box en définissant la valeur de sa propriété Text. Définissez cette propriété en tapant directement dans le contrôle ou en tapant une expression dans la barre de formule.

  • Si vous tapez directement dans le contrôle, il affiche exactement ce que vous saisissez.
  • Si vous tapez une expression dans la barre de formule, le contrôle affiche le résultat de l’expression.

Voici quelques exemples.

  1. Ajoutez un contrôle Text box nommé ShowText et définissez sa propriété Text sur la formule suivante :
    Now()

    Si votre ordinateur est configuré pour les paramètres régionaux « en-us », la date et l’heure actuelles s’affichent au format suivant :
    mm/jj/aaaa hh:mm AM/PM

    Si votre ordinateur est configuré pour des paramètres régionaux tels que « fr-fr », la date et l’heure actuelles s’affichent au format suivant :
    jj/mm/aaaa hh:mm AM/PM

  2. Définissez la propriété Text de ShowText sur la formule suivante :
    DateDiff(Today(), DateValue("01/01/2020"))

    Nombre de jours entre aujourd’hui et le 1 janvier 2020

    Le contrôle affiche le nombre de jours entre aujourd'hui et le 1 janvier 2020, à l’aide de ces fonctions :

    • DateDiff, qui calcule le nombre de jours, de trimestres ou d’années entre deux dates.
    • Today, qui calcule le jour actuel en tant que valeur.
    • DateValue, qui convertit une chaîne littérale, comme celle indiquée entre guillemets, en valeur sur laquelle des calculs peuvent être effectués.
  3. Ajoutez un contrôle Text input nommé BirthDate, et placez-le sous ShowText.

  4. Dans BirthDate, tapez le mois et le jour de votre naissance (par exemple, 05/18).

  5. Définissez la propriété Text de ShowText sur la formule suivante :
    DateDiff(Today(), DateValue(BirthDate.Text))

    Nombre de jours entre aujourd’hui et votre anniversaire

    ShowText indique le nombre de jours entre aujourd’hui et la date que vous avez indiquée dans BirthDate. Si votre anniversaire a déjà eu lieu cette année, ShowText affiche une valeur négative.

Mettre en forme des dates et des heures à l’aide de DateTimeValue

Convertissez des dates et des heures à partir de chaînes de texte en valeurs, que vous pouvez mettre en forme de plusieurs façons et utiliser dans les calculs. Spécifiez le format à l’aide des options intégrées et personnalisées.

Remarque :

Les fonctions DateTimeValue et DateValue peuvent convertir en valeurs les dates aux formats suivants :
- MM/JJ/AAAA
- JJ/MM/AAAA
- JJ Mois AAAA
- Mois JJ, AAAA

  1. Ajoutez un contrôle Text input nommé ArrivalDateTime et entrez une date et une heure au format suivant :
    5/10/85 6:15 AM

  2. Ajoutez un contrôle Text box nommé ShowDate et définissez sa propriété Text sur la formule suivante :
    DateTimeValue(ArrivalDateTime.Text)

    Convertir une date/heure de texte en valeur

    ShowDate affiche les mêmes informations que celles que vous avez saisies, mais il a été converti de texte en valeur et mis en forme différemment. Par exemple, l’année s’affiche avec quatre chiffres au lieu de deux.

  3. Remplacez la propriété Text de ShowDate par la formule suivante :
    DateTimeValue(ArrivalDateTime.Text, "fr")

    Afficher une valeur de date/heure au format français

    ShowDate affiche le jour avant le mois, comme un utilisateur français s’y attend.

    Conseil :

    Pour afficher la liste des autres paramètres régionaux dans Intellisense, supprimez le guillemet fermant et fr de la formule, mais laissez le guillemet ouvert :

    Afficher la liste des paramètres régionaux

  4. Pour utiliser l’un des nombreux formats prédéfinis, remplacez la propriété Text de ShowDate par la formule suivante :
    Text(DateTimeValue(ArrivalDateTime.Text), DateTimeFormat.LongDateTime)

    Afficher une valeur de date/heure au format français

    ShowDate affiche le jour de la semaine, la date et l’heure.

    Conseil :

    Le paramètre DateTimeFormat prend en charge plusieurs autres formats prédéfinis. Pour afficher cette liste, supprimez LongDateTime de la formule.

  5. Pour utiliser un format personnalisé, remplacez la propriété Text de ShowDate par la formule suivante :
    Text(DateTimeValue(ArrivalDateTime.Text), "mm/dd/yyyy hh:mm:ss.fff AM/PM")

    Afficher une valeur de date/heure au format français

    ShowDate affiche la valeur de date/d’heure au format que vous avez spécifié, y compris les millisecondes.

    Conseil :

    Pour arrondir l’heure au dixième ou au centième de seconde le plus proche, spécifiez hh:mm:ss.f ou hh:mm:ss.ff dans la formule.

Mettre en forme une date à l’aide de DateValue

  1. Ajoutez un contrôle Text input nommé ArrivalDate, puis tapez une date à l’intérieur (par exemple, 5/10/85).

  2. Ajoutez un contrôle Text box nommé FormatDate et définissez sa propriété Text sur la formule suivante :
    DateValue(ArrivalDate.Text)

    FormatDate affiche la date que vous avez saisie, sauf l’année qui s’affiche sous forme de quatre chiffres.

  3. Définissez la propriété Text de FormatDate sur la formule suivante :
    DateValue(ArrivalDate.Text, "fr")

    FormatDate affiche le jour avant le mois, comme un utilisateur français s’y attend.

  4. Pour utiliser l’un des nombreux formats prédéfinis, définissez la propriété Text de FormatDate sur la formule suivante :
    Text(DateValue(ArrivalDate.Text), DateTimeFormat.LongDate)

    FormatDate affiche le jour de la semaine, le mois, le jour et l’année.

  5. Pour utiliser un format personnalisé, définissez la propriété Text de FormatDate sur la formule suivante :
    Text(DateValue(ArrivalDate.Text), "yy/mm/dd")

    FormatDate affiche la date au format que vous avez spécifié.

Mettre en forme une heure à l’aide de DateTimeValue

  1. Ajoutez un contrôle Text input nommé ArrivalTime, puis tapez 6:15 AM à l’intérieur.

  2. Ajoutez un contrôle Text box nommé ShowTime.

  3. Pour utiliser l’un des nombreux formats prédéfinis, définissez la propriété Text de ShowTime sur la formule suivante :
    Text(DateTimeValue(ArrivalTime.Text), DateTimeFormat.LongTime)

    ShowTime indique l’heure que vous avez spécifiée, y compris les secondes.

  4. Pour utiliser un format personnalisé, définissez la propriété Text de ShowTime sur la formule suivante :
    Text(DateTimeValue(ArrivalTime.Text), "hh:mm:ss.fff AM/PM")

    ShowTime indique l’heure que vous avez spécifiée, y compris les secondes et les millisecondes.

    Conseil :

    Pour arrondir l’heure au dixième ou au centième de seconde le plus proche, indiquez hh:mm:ss.f ou hh:mm:ss.ff dans la formule.

Afficher la durée entre des dates

  1. Ajoutez deux contrôles Text input nommés Start et End.

  2. Tapez 1/4/2015 dans Startet 1/1/2016 dans End.

  3. Ajoutez un contrôle Text box nommé DateDiff et définissez sa propriété Text sur la formule suivante :
    DateDiff(DateValue(Start.Text), DateValue(End.Text))

    Comparer deux dates

    DateDiff affiche 275, qui correspond au nombre de jours entre le 1er avril 2015 et le 1 janvier 2016.

  4. Définissez la propriété Text de ShowDiff sur la formule suivante :
    DateDiff(DateValue(Start.Text), DateValue(End.Text), Months)

    DateDiff affiche 9, qui correspond au nombre de mois entre le 1er avril 2015 et le 1 janvier 2016. Remplacez Months par Quarters ou Years pour afficher la durée dans ces unités.

Identifier une date avant ou après une autre date

  1. Ajoutez un contrôle Text input nommé Start et tapez 5/10/1985 à l’intérieur.

  2. Ajoutez un contrôle Text box nommé DateAdd et définissez sa propriété Text sur la formule suivante :
    DateAdd(DateValue(Start.Text), 3)

    Ajouter trois jours

    DateAdd affiche 5/13/1985, qui est trois jours après la date indiquée dans Start.

  3. Définissez la propriété Text de DateAdd sur la formule suivante :
    DateAdd(DateValue(Start.Text), -3)

    Soustraire trois jours

    DateAdd affiche 5/7/1985, qui est trois jours avant la date indiquée dans Start.

  4. Remplacez la propriété Text de DateAdd par la formule suivante :
    DateAdd(DateValue(Start.Text), 3, Months)

    Ajouter trois mois

    Le libellé affiche 8/10/1985, qui est trois mois après la date indiquée dans Start. Remplacez Months par Quarters ou Years pour identifier une date qui correspond au nombre spécifié de trimestres ou d’années avant ou après la date indiquée dans Start.

Calculer des dates en fonction des années, des mois et des jours

  1. Ajoutez trois contrôles Drop down nommés Year, Month et Day.

  2. Définissez la propriété Items de Year sur la formule suivante :
    Table({Year:"2014"}, {Year:"2015"}, {Year:"2016"})

  3. Définissez la propriété Items de Month sur la formule suivante :
    Table({Month:"1"}, {Month:"2"}, {Month:"3"}, {Month:"4"}, {Month:"5"}, {Month:"6"}, {Month:"7"}, {Month:"8"}, {Month:"9"}, {Month:"10"}, {Month:"11"}, {Month:"12"})

  4. Définissez la propriété Items de Day sur la formule suivante :
    Table({Day:"1"}, {Day:"2"}, {Day:"3"}, {Day:"4"}, {Day:"5"}, {Day:"6"}, {Day:"7"}, {Day:"8"}, {Day:"9"}, {Day:"10"}, {Day:"11"}, {Day:"12"}, {Day:"13"}, {Day:"14"}, {Day:"15"}, {Day:"16"}, {Day:"17"}, {Day:"18"}, {Day:"19"}, {Day:"20"}, {Day:"21"}, {Day:"22"}, {Day:"23"}, {Day:"24"}, {Day:"25"}, {Day:"26"}, {Day:"27"}, {Day:"28"}, {Day:"29"}, {Day:"30"}, {Day:"31"})

  5. Ajoutez un contrôle Text box et définissez sa propriété Text sur la formule suivante :
    Text(Date(Value(Year.Selected.Value), Value(Month.Selected.Value), Value(Day.Selected.Value)), DateTimeFormat.LongDate)

    La date Wednesday, January 1, 2014 est indiquée par défaut. Sélectionnez d’autres valeurs dans les contrôles Drop down pour modifier la date dans le contrôle Text box.

Vous devrez peut-être convertir des données auxquelles vous ne vous attendiez pas. Si vous ajoutez des contrôles Text input plutôt que des contrôles Drop down, un utilisateur peut entrer une date incorrecte, telle que 45 mai. La fonction Date gère les données atypiques comme suit :

  • Si une valeur d’année est comprise entre 0 et 1899 (inclus), la fonction ajoute cette valeur à 1900 pour calculer l’année.
  • Si une valeur d’année est comprise entre 1900 et 9999 (inclus), la fonction utilise cette valeur en tant qu’année.
  • Si une valeur d’année est inférieure à 0 ou est supérieure ou égale à 10 000, la fonction renvoie une valeur d’erreur.
  • Si une valeur de mois est supérieure à 12, la fonction ajoute ce nombre de mois au premier mois de l’année spécifiée.
  • Si une valeur de mois est inférieure à 1, la fonction soustrait ce nombre de mois, plus 1, du premier mois de l’année spécifiée.
  • Si une valeur de jour est supérieure au nombre de jours du mois spécifié, la fonction ajoute ce nombre de jours au premier jour du mois et renvoie la date correspondante d’un mois suivant.
  • Si une valeur de jour est inférieure à 1, la fonction soustrait ce nombre de jours, plus 1, du premier jour du mois spécifié.

Calculer les durées en fonction des heures, des minutes et des secondes

  1. Ajoutez deux contrôles Drop-down nommés Hour et Minute.

  2. Définissez la propriété Items de Hour sur la formule suivante :
    Table({Hour:"9"}, {Hour:"10"}, {Hour:"11"}, {Hour:"12"}, {Hour:"13"}, {Hour:"14"}, {Hour:"15"}, {Hour:"16"}, {Hour:"17"})

  3. Définissez la propriété Items de Minute sur la formule suivante :
    Table({Minute:"0"}, {Minute:"15"}, {Minute:"30"}, {Minute:"45"})

  4. Ajoutez un contrôle Text box et définissez sa propriété Text sur la formule suivante :

    Text(Time(Value(Hour.Selected.Value), Value(Minute.Selected.Value), 0), DateTimeFormat.ShortTime)

  5. Sélectionnez 15 dans Hour et 45 dans Minute.

    Le contrôle Text box affiche 3:45 PM.

    Vous pouvez ajouter des entrées à Hour et Minute afin que les utilisateurs puissent sélectionner une plus large gamme d’heures et un nombre de minutes plus précis. Vous pouvez également ajouter un troisième contrôle Drop down afin que les utilisateurs puissent spécifier des secondes. Si vous ajoutez une troisième liste, définissez la propriété Text du contrôle Text box sur l’expression suivante :
    Text(Time(Value(Hour.Selected.Value), Value(Minute.Selected.Value), Value(Second.Selected.Value)), DateTimeFormat.LongTime)