Visualizzare testo, date e ore nelle app canvas

In Power Apps aggiungi date e ore a un'app canvas e formattale per visualizzare il livello di dettaglio corretto o per riflettere le impostazioni locali. Calcola la quantità di tempo tra due date o calcola una data che precede o segue di un determinato periodo di tempo una data specificata. Converti le date in valori separati per giorni, mesi e anni o viceversa e converti le ore in valori separati per ore, minuti e secondi o viceversa.

Ad esempio, aggiungi dati degli utenti relativi a transazioni azionarie o riunioni con i clienti, dati da un'origine esterna o dati da un'altra app creata in Power Apps. Se i dati includono ore con precisione fino al millisecondo, arrotondale al minuto per motivi di semplicità. Calcola il numero di giorni rimanenti che precedono un'attività cardine principale. Se vuoi pianificare riunioni con i clienti ogni cinque giorni, calcola le date automaticamente. Se la data 10 maggio 1985 è archiviata in campi separati per giorno, mese e anno, consolida i campi in un singolo valore. Viceversa, suddividi ogni data in valori separati se l'app li gestisce separatamente.

Prerequisiti

  • Iscriviti a Power Apps e accedi utilizzando le stesse credenziali che hai utilizzato per l'iscrizione.
  • Creare un'app o aprire un'app esistente in Power Apps.
  • Informazioni su come configurare un controllo in Power Apps.

Visualizzare il testo in un controllo Etichetta

Visualizza il testo in un controllo Etichetta impostando il valore della relativa proprietà Text. Imposta questa proprietà digitando direttamente nel controllo o digitando un'espressione nella barra della formula.

  • Se digiti direttamente nel controllo, viene visualizzato esattamente ciò che viene digitato.
  • Se digiti un'espressione nella barra della formula, il controllo visualizza il risultato dell'espressione.

Di seguito sono riportati alcuni esempi.

  1. Aggiungi un controllo Etichetta denominato ShowText e impostane la proprietà Text sulla formula seguente:
    Now()

    Se il computer è impostato sulle impostazioni locali "en-us", la data e l'ora corrente vengono visualizzate nel formato:
    mm/dd/yyyy hh:mm AM/PM

    Se il computer è impostato sulle impostazioni locali "fr-fr", la data e l'ora corrente vengono visualizzate nel formato:
    dd/mm/yyyy hh:mm AM/PM

  2. Imposta la proprietà Text di ShowText sulla formula seguente:
    DateDiff(Today(), DateValue("01/01/2020"))

    Il controllo mostra il numero di giorni da oggi al 1° gennaio 2020 usando le funzioni seguenti:

    • DateDiff che calcola il numero di giorni, trimestri o anni tra le due date.
    • Today che calcola il giorno corrente come valore.
    • DateValue che converte una stringa letterale, come illustrato tra virgolette, in un valore in cui è possibile eseguire i calcoli.
  3. Aggiungi un controllo Input di testo denominato BirthDate e spostalo in ShowText.

  4. In BirthDate digita il mese e il giorno di nascita (ad esempio, 05/18).

  5. Imposta la proprietà Text di ShowText sulla formula seguente:
    DateDiff(Today(), DateValue(BirthDate.Text))

    ShowText mostra il numero di giorni tra oggi e la data digitata in BirthDate. Se la data di nascita è già trascorsa nell'anno in corso, ShowText visualizza un valore negativo.

Formattare date e ore usando DateTimeValue

Converti date e ore da stringhe di testo in valori che puoi quindi formattare in modi diversi e usare nei calcoli. Specifica il formato usando le opzioni predefinite e personalizzate.

Nota

Le funzioni DateTimeValue e DateValue possono convertire le date in questi formati in valori:

  • MM/DD/YYYY
  • DD/MM/YYYY
  • GG Mes AAAA
  • Mese GG, AAAA
  1. Aggiungi un controllo Input di testo denominato ArrivalDateTime e digita una data e un'ora nel formato seguente:
    5/10/85 6:15 AM

  2. Aggiungi un controllo Etichetta denominato ShowDate e impostane la proprietà Text sulla formula seguente:
    DateTimeValue(ArrivalDateTime.Text)

    ShowDate visualizza le informazioni digitate ma convertite da testo a valore e formattate in modo diverso. Ad esempio, l'anno viene visualizzato come quattro cifre anziché due.

  3. Imposta la proprietà Text di ShowDate sulla formula seguente:
    DateTimeValue(ArrivalDateTime.Text, "fr")

    ShowDate visualizza il giorno prima del mese come si aspetterebbe un utente francese.

    Suggerimento

    Per visualizzare un elenco delle altre impostazioni locali in Intellisense, rimuovi le virgolette di chiusura e fr dalla formula e lascia le virgolette di apertura:

  4. Per usare uno dei numerosi formati predefiniti, modifica la proprietà Text di ShowDate impostandola sulla formula seguente:
    Text(DateTimeValue(ArrivalDateTime.Text), DateTimeFormat.LongDateTime)

    ShowDate visualizza il giorno della settimana, la data e l'ora.

    Suggerimento

    Il parametro DateTimeFormat supporta numerosi altri formati predefiniti. Per visualizzare l'elenco, rimuovi LongDateTime dalla formula.

  5. Per usare un formato personalizzato, modifica la proprietà Text di ShowDate impostandola sulla formula seguente:
    Text(DateTimeValue(ArrivalDateTime.Text), "mm/dd/yyyy hh:mm:ss.fff AM/PM")

    ShowDate visualizza il valore data/ora nel formato specificato con i millisecondi.

    Suggerimento

    Per arrotondare l'ora al decimo o centesimo di secondo, specifica hh:mm:ss.f o hh:mm:ss.ff nella formula.

Formattare una data usando DateValue

  1. Aggiungi un controllo Input di testo denominato ArrivalDate e digita una data nel controllo, ad esempio 5/10/85.

  2. Aggiungi un controllo Etichetta denominato FormatDate e impostane la proprietà Text sulla formula seguente:
    DateValue(ArrivalDate.Text)

    FormatDate visualizza la data digitata, ma con l'anno con quattro cifre.

  3. Imposta la proprietà Text di FormatDate sulla formula seguente:
    DateValue(ArrivalDate.Text, "fr")

    FormatDate visualizza il giorno prima del mese come si aspetterebbe un utente francese.

  4. Per usare uno dei numerosi formati predefiniti, imposta la proprietà Text di FormatDate sulla formula seguente:
    Text(DateValue(ArrivalDate.Text), DateTimeFormat.LongDate)

    FormatDate visualizza il giorno della settimana, il mese, il giorno e l'anno.

  5. Per usare un formato personalizzato, imposta la proprietà Text di FormatDate sulla formula seguente:
    Text(DateValue(ArrivalDate.Text), "yy/mm/dd")

    FormatDate visualizza la data nel formato specificato.

Formattare un'ora usando DateTimeValue

  1. Aggiungi un controllo Input di testo denominato ArrivalTime e quindi digita 6:15 AM nel controllo.

  2. Aggiungi un controllo Etichetta denominato ShowTime.

  3. Per usare uno dei numerosi formati predefiniti, imposta la proprietà Text di ShowTime sulla formula seguente:
    Text(DateTimeValue(ArrivalTime.Text), DateTimeFormat.LongTime)

    ShowTime visualizza l'ora specificata, inclusi i secondi.

  4. Per usare un formato personalizzato, imposta la proprietà Text di ShowTime sulla formula seguente:
    Text(DateTimeValue(ArrivalTime.Text), "hh:mm:ss.fff AM/PM")

    ShowTime visualizza l'ora specificata, inclusi i secondi e i millisecondi.

    Suggerimento

    Per arrotondare l'ora al decimo o centesimo di secondo, immetti hh:mm:ss.f o hh:mm:ss.ff nella formula.

Visualizzare il tempo tra due date

  1. Aggiungi due controlli Input di testo denominati Start ed End.

  2. Digita 4/1/2015 in Start e 1/1/2016 in End.

  3. Aggiungi un controllo Etichetta denominato DateDiff e impostane la proprietà Text sulla formula seguente:
    DateDiff(DateValue(Start.Text), DateValue(End.Text))

    DateDiff visualizza 275, ovvero il numero di giorni tra il 1° aprile 2015 e il 1° gennaio 2016.

  4. Imposta la proprietà Text di DateDiff sulla formula seguente:
    DateDiff(DateValue(Start.Text), DateValue(End.Text), Months)

    DateDiff visualizza 9, ovvero il numero di mesi tra il 1° aprile 2015 e il 1° gennaio 2016. Sostituisci Months con Quarters o Years per visualizzare il tempo nell'unità specificata.

Identificare una data precedente o successiva a un'altra data

  1. Aggiungi un controllo Input di testo denominato Start e digita 5/10/1985 nel controllo.

  2. Aggiungi un controllo Etichetta denominato DateAdd e impostane la proprietà Text sulla formula seguente:
    DateAdd(DateValue(Start.Text), 3)

    DateAdd visualizza 5/13/1985, ovvero tre giorni dopo la data specificata in Start.

  3. Imposta la proprietà Text di DateAdd sulla formula seguente:
    DateAdd(DateValue(Start.Text), -3)

    DateAdd visualizza 5/7/1985, ovvero tre giorni prima della data specificata in Start.

  4. Modifica la proprietà Text di DateAdd impostandola sulla formula seguente:
    DateAdd(DateValue(Start.Text), 3, Months)

    L'etichetta visualizza 8/10/1985, ovvero tre mesi dopo la data specificata in Start. Sostituisci Months con Quarters o Years per identificare una data che corrisponde al numero di trimestri o anni prima o dopo la data specificata in Start.

Calcolare le date in base ad anni, mesi e giorni

  1. Aggiungi tre controlli Elenco a discesa denominati Year, Month e Day.

  2. Imposta la proprietà Items di Year sulla formula seguente:
    Table({Year:"2014"}, {Year:"2015"}, {Year:"2016"})

  3. Imposta la proprietà Items di Month sulla formula seguente:
    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. Imposta la proprietà Items di Day sulla formula seguente:
    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. Aggiungi un controllo Etichetta e impostane la proprietà Text sulla formula seguente:
    Text(Date(Value(Year.SelectedText.Value), Value(Month.SelectedText.Value), Value(Day.SelectedText.Value)), DateTimeFormat.LongDate)

    Per impostazione predefinita viene visualizzato Wednesday, January 1, 2014. Seleziona valori diversi nei controlli Elenco a discesa per modificare la data nel controllo Etichetta.

Potrebbe essere necessario convertire dati non previsti. Se aggiungi controlli Input di testo anziché controlli Elenco a discesa, gli utenti potrebbero immettere una data errata, ad esempio 45 maggio. La funzione Date gestisce i dati atipici nei modi seguenti:

  • Se un valore di anno è compreso tra 0 e 1899 incluso, la funzione aggiunge il valore a 1900 per calcolare l'anno.
  • Se un valore di anno è compreso tra 1900 e 9999 incluso, la funzione usa il valore come anno.
  • Se un valore di anno è minore di 0 o è 10000 o un valore maggiore, la funzione restituisce un valore di errore.
  • Se un valore di mese è maggiore di 12, la funzione aggiunge il numero di mesi specificato al primo mese dell'anno specificato.
  • Se un valore di mese è minore di 1, la funzione sottrae il numero di mesi specificato più 1 dal primo mese dell'anno specificato.
  • Se un valore di giorno è maggiore del numero di giorni nel mese specificato, la funzione aggiunge il numero di giorni specificato al primo giorno del mese e restituisce la data corrispondente di un mese successivo.
  • Se un valore di giorno è minore di 1, la funzione sottrae il numero di giorni specificato più 1 dal primo giorno del mese specificato.

Calcolare le ore in base a ore, minuti e secondi

  1. Aggiungi due elenchi A discesa denominati Hour e Minute.

  2. Imposta la proprietà Items di Hour sulla formula seguente:
    Table({Hour:"9"}, {Hour:"10"}, {Hour:"11"}, {Hour:"12"}, {Hour:"13"}, {Hour:"14"}, {Hour:"15"}, {Hour:"16"}, {Hour:"17"})

  3. Imposta la proprietà Items di Minute sulla formula seguente:
    Table({Minute:"0"}, {Minute:"15"}, {Minute:"30"}, {Minute:"45"})

  4. Aggiungi un controllo Etichetta e impostane la proprietà Text sulla formula seguente:

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

  5. Seleziona 15 in Hour e 45 in Minute.

    Il controllo Etichetta mostra 3:45 PM.

    Puoi aggiungere voci a Hour e Minute per consentire agli utenti di effettuare la selezione da un intervallo di ore maggiore e di selezionare un numero di minuti più preciso. Puoi anche aggiungere un terzo controllo Elenco a discesa per consentire agli utenti di specificare i secondi. Se aggiungi un terzo elenco, imposta la proprietà Text del controllo Etichetta sull'espressione seguente:
    Text(Time(Value(Hour.Selected.Value), Value(Minute.Selected.Value), Value(Second.Selected.Value)), DateTimeFormat.LongTime)

Vedi anche

Esempi del controllo Selezione data

Nota

Puoi indicarci le tue preferenze di lingua per la documentazione? Partecipa a un breve sondaggio. (il sondaggio è in inglese)

Il sondaggio richiederà circa sette minuti. Non viene raccolto alcun dato personale (Informativa sulla privacy).