Compartir por


Función de texto

Aplícase a: Aplicacións Canvas Aplicacións Canvas Dataverse columnas de fórmulas Aplicacións baseadas en modelos Power Pages Power Platform CLI

Converte calquera valor e define o formato dun número ou valor da data/hora nunha cadea de texto.

Descripción

A función Text define o formato dun número ou un valor de data/hora baseándose nun destes tipos de argumentos:

  • Formato de data/hora predefinido, que especifica usando a enumeración DataTimeFormat. Por datas e horas, prefírese este enfoque xa que se adapta automaticamente á lingua e rexión de cada usuario.
  • Un formato personalizado, que comprende unha cadea de marcadores de posición que definen, por exemplo, se os números mostran un separador decimal e as datas mostran o nome completo do mes, o mes como abreviatura ou o mes como número. Power Apps admite un subconxunto dos marcadores de posición que admite Microsoft Excel. Nesta cadea, o marcador de posición do idioma especifica o idioma no que interpretar os outros marcadores de posición. Se o formato personalizado inclúe un período, por exemplo, o marcador de posición de formato de idioma especifica se o período é un separador decimal (ja-JP) ou un separador de miles (es-ES).

Consulte traballar con datas e horas para obter máis información.

A función Text tamén pode converter calquera tipo de datos a unha representación de texto mediante un formato predeterminado. Use isto para pasar valores que non sexan de texto a funcións baseadas en texto como Len, Right e IsMatch.

Formatos de data/hora predefinidos

Para estes exemplos, a data e hora empregadas é o martes, 7 de abril de 2020 ás 8:26:59.180 p.m., no fuso horario UTC-7 horas.

Enum. DataTimeFormat Descripción Exemplos (usando en-US)
LongDate Ano de catro díxitos, nome do mes, día do mes e día da semana. Non se abreviaron os nomes do mes e do día da semana. "Martes, 7 de abril de 2020"
LongDateTime Ano de catro díxitos, nome do mes, día do mes e día da semana, máis hora (reloxo de 12 horas), minutos, segundos e designación a.m./p.m. Non se abreviaron os nomes do mes e do día da semana. "Martes, 7 de abril de 2020 8:26:59 p.m."
LongDateTime24 Ano de catro díxitos, mes, día do mes e día da semana, máis hora (reloxo de 24 horas), minutos, segundos. Non se abreviaron os nomes do mes e do día da semana. "Martes, 7 de abril de 2020 20:26:59"
LongTime Hora (reloxo de 12 horas), minutos, segundos e designación a.m./p.m. "8:26:59 p.m."
LongTime24 Hora (reloxo de 24 horas), minutos e segundos. "20:26:59"
Data curta Ano de catro díxitos con mes numérico e día do mes. "4/7/2020"
ShortDateTime Ano de catro díxitos con mes numérico e día do mes, máis hora (reloxo de 12 horas), minutos e designación a.m./p.m. "7/4/2020 8:26 p.m."
ShortDateTime24 Ano de catro díxitos con mes numérico e día do mes, máis hora (reloxo de 24 horas) e minutos. "7/4/2020 20:26"
Tempo curto Hora (reloxo de 12 horas), minutos e designación a.m./p.m. "8:26 p.m."
Tempo curto 24 Hora (reloxo de 24 horas) e minutos. "20:26"
UTC O valor data/hora convértese en UTC en función do fuso horario do usuario actual e formátase segundo o estándar ISO 8601. "2020-04-08T03:26:59.180Z"

Marcadores de posición numéricos

Marcador de posición Descripción
0 (cero) Mostra ceros insignificantes se un número ten menos cifras que ceros hai no formato. Por exemplo, use o formato #.00 se desexa amosar 8.9 como 8.90.
# Segue as mesmas regras que 0 (cero). Non obstante, Text non devolve ceros adicionais cando o número ten menos díxitos a cada lado do decimal que símbolos # hai no formato. Por exemplo, 8.9 móstrase se o formato personalizado é #.## e o número para formatar é 8.9.
. (punto) Mostra o punto decimal dun número. Depende do idioma do formato personalizado; vexa aplicacións globais para obter máis detalles.
, (coma) Mostra o separador de agrupación nun número, moitas veces usado para miles. O texto separa os grupos por comas se o formato contén unha coma encerrada por signos numéricos (#) ou por ceros. Depende do idioma do formato personalizado; vexa aplicacións globais para obter máis detalles.

Se un número ten máis díxitos á dereita do punto decimal que marcadores de posición hai no formato, o número arreronda a tantos decimais como marcadores de posición hai. Se hai máis díxitos á esquerda do punto decimal do que hai marcadores de posición, móstranse os díxitos adicionais. Se o formato contén só signos de número (#) á esquerda do punto decimal, os números inferiores a 1 comezan cun punto decimal (por exemplo, .47).

Marcadores de posición de data e hora

Marcador de posición Descripción
m Mostra o mes como un número sen un cero antes.
mm Mostra o mes como un número con un cero antes cando corresponda.
mmm Mostra o mes como abreviatura (Xan a Dec).
mmmm Mostra o mes como un nome completo (Xaneiro a Decembro).
d Mostra o día como un número sen un cero antes.
dd Mostra o día como un número con un cero antes cando corresponda.
ddd Mostra o día como abreviatura (Dom a Sáb).
ddd Mostra o día como un nome completo (Domingo a Sábado).
ai Mostra o ano como un número de dous díxitos.
aaaa Mostra o ano como un número de catro díxitos.
h Mostra a hora como un número sen un cero antes.
hh Mostra a hora como un número con un cero antes cando corresponda. Se o formato contén AM ou PM, a hora móstrase en función do reloxo de 12 horas. Se non, a hora móstrase en función do reloxo de 24 horas.
m Mostra o minuto como un número sen un cero antes.

Este marcador de posición debe aparecer inmediatamente despois do código h ou hh ou inmediatamente antes do código ss; se non, Text devolve o mes en vez de minutos.
mm Mostra a o minuto como un número con un cero antes cando corresponda.

Este marcador de posición debe aparecer inmediatamente despois do marcador de posición h ou hh ou inmediatamente antes do marcador de posición ss. Se non, Text devolve o mes en vez de minutos.
s Mostra o segundo como un número sen un cero antes.
ss Mostra a o segundo como un número con un cero antes cando corresponda.
f Mostra as fraccións de segundos.
AM/PM, a/p Mostra a hora baseándose nun reloxo de 12 horas. O texto devolve "AM" ou "a" para horarios desde medianoite ata mediodía e "PM" ou "p" para horarios desde mediodía ata medianoite

Marcadores de posición literais

Pode incluír calquera destes caracteres na súa cadea de formato. Aparecerán no resultado de Text tal cal. Os caracteres adicionais están reservados para os futuros marcadores de posición, polo que non debería usalos.

Carácter Descripción
Calquera símbolo monetario Signo do dólar, signo do céntimo, signo do euro etc.
+ Signo máis
( Paréntese esquerdo
: Dous puntos
^ Acento circunflexo
' Apóstrofo
{ Chave esquerda
< Signo Inferior a
= Signo igual
- Signo menos
/ Barra oblicua
) Paréntese dereito
& Signo &
~ Til
} Chave dereita
> Signo Superior a
  Carácter espacial

Aplicacións globais

A función Text ten conciencia global. Para unha gran variedade de idiomas, sabe escribir correctamente datas, horas, moedas e números. Para facer o seu traballo, precisa de dúas informacións:

  • O idioma do formato personalizado: Para os creadores, como se debe interpretar un formato personalizado? Os caracteres separadores (. e ,) teñen diferentes significados en diferentes idiomas. Se especifica un formato personalizado, pode incluír un marcador de lingua ou tomar o valor por defecto, que reflicte o idioma no que está configurado o dispositivo. Aínda máis doado, pode usar un dos formatos de data/hora predefinidos, que son indiferentes á lingua.
  • O idioma do resultado: Para os usuarios, en que idioma debería aparecer o resultado da función? Os nomes de meses e días da semana deben estar no idioma adecuado para o usuario da aplicación, que pode especificar engadindo un terceiro argumento opcional á función Text.

Para os dous, especifique o idioma usando unha etiqueta de idioma. Para ver a lista de idiomas compatibles, escriba Text( 1234, "", ) na barra de fórmulas ou no separador Avanzado do panel da dereita e logo percorra a lista de configuracións rexionais suxeridas para o terceiro argumento.

Marcador de idioma

Para especificar o idioma do formato personalizado, use:

Marcador de posición Descripción
[$-LanguageTag] LanguageTag é unha etiqueta de idioma que devolve a función Language . Pode especificar só o idioma (como [$-en] para inglés), ou tamén pode especificar a rexión (como [$-en-GB] para concretar aínda máis Gran Bretaña).

O marcador de posición do idioma pode aparecer en calquera lugar do formato personalizado, pero só unha vez.

Se especifica un formato personalizado sen marcador de idioma e o formato é ambiguo desde o punto de vista global, a etiqueta de idioma do idioma actual insírese automaticamente.

[$-en-US] asúmese se este marcador de posición non está presente cando se executa a túa aplicación.

Nota

Nunha versión futura, a sintaxe deste marcador de posición pode cambiar para evitar confusións cun marcador de posición similar, pero diferente, que Excel admite.

Etiqueta de idioma de resultados

O resultado de Text inclúe cadeas traducidas para meses, días da semana e designacións a.m./p.m., así como os separadores decimais e grupais adecuados.

Por defecto, Text usa o idioma do usuario que executa a aplicación. A función Language devolve a etiqueta de idioma para o usuario actual. Pode anular este valor por defecto subministrando unha etiqueta de idioma para o terceiro argumento en Text.

Sintaxe

Texto( NumberOrDateTime, DateTimeFormatEnum [, ResultLanguageTag ])

  • NumberOrDateTime - Obrigatorio. O número ou o valor de data/hora para formatar.
  • DateTimeFormat : é necesario. Un membro da enumeración DataTimeFormat.
  • ResultLanguageTag - Opcional. A etiqueta de idioma que se debe empregar para o texto de resultados. Por defecto, úsase o idioma do usuario actual.

Texto( NumberOrDateTime, CustomFormat [, ResultLanguageTag ])

  • Número : obrigatorio. O número ou o valor de data/hora para formatar.
  • CustomFormat : é necesario. Un ou varios marcadores de posición incluídos entre comiñas dobres.
  • ResultLanguageTag - Opcional. A etiqueta de idioma que se debe empregar para o texto de resultados. Por defecto, úsase o idioma do usuario actual.

Texto( AnyValue )

  • AnyValue : é necesario. Valor no que converter unha representación de texto. Úsase un formato predeterminado.

Texto ( Sen escribir )

  • Sen escribir - Obrigatorio. obxecto sen tipo que representa unha cadea. Os valores aceptables dependen do provedor non tipificado. Para JSON, se o obxecto sen tipo é un número ou booleano, converterase en texto.

Exemplos

A non ser que se especifique o contrario, o usuario que administra estas fórmulas está situado nos Estados Unidos e seleccionou o inglés como idioma. A función Language devolve "en-US".

Número

Fórmula Descripción Resultado
Texto (1234.59, "####.#") Formata o número cun decimal. "1234.6"
Texto (8.9, "#.000") Enche a parte decimal do número con ceros ao final, se fose necesario. "8.900"
Texto(0.631, "0.#") Enche a parte enteira do número con ceros ao inicio, se fose necesario. "0.6"
Texto( 12, "#.0#")
Texto( 1234.568, "#.0#")
Enche a parte decimal do número con ceros para un decimal, e inclúe un segundo decimal se se fornece. "12.0"
"1234.57"
Texto (12000, "$ #,###")
Texto( 1200000, "$ #,###" )
Coloca un separador de miles cada tres díxitos e inclúe un símbolo de moeda. "$ 12,000"
"$ 1,200,000"

Data/hora

  • Ás 2:37:47 p.m. do luns, 23 de novembro de 2015
  • Fuso horario do Pacífico dos Estados Unidos (UTC-8)
Fórmula Descripción Resultado
Texto(Agora(), FormatoDataHora.DataLonga) Formata como unha cadea de data longa, no idioma e configuración rexional do usuario actual. "Luns, 23 de novembro de 2015"
Texto(Agora(), DateTimeFormat.LongDateTime) Formata como unha cadea de data e hora longa, no idioma e configuración rexional do usuario actual, usando un reloxo de 12 horas. "Luns, 23 de novembro de 2015 2:37:47 p.m."
Texto( Agora(), DateTimeFormat.LongTime24 ) Formata como unha cadea de hora longa, empregando un reloxo de 24 horas. "14:37:47"
Texto( Agora(), DateTimeFormat.ShortDate ) Formata como unha cadea de data curta, no idioma e configuración rexional do usuario actual. "23/11/2015"
Texto( Agora(), "d-mmm-aa" ) Formata con caracteres marcadores de posición:
  • d para un día do mes dun só díxito ou de dous díxitos
  • - como un carácter literal copiado no resultado
  • mmm para unha abreviatura de tres letras do mes
  • - como outro carácter literal copiado no resultado
  • yy para unha abreviatura de dous díxitos do ano
"23-nov-15"
Text(1448318857*1000, "mmm. dd, yyyy (hh:mm:ss AM/PM)") Mostra un valor de data-hora Unix en formato lexible por humanos se multiplica o valor fonte por 1.000. "23 de novembro de 2015 (02:47:37 p.m.)"

Aplicacións globais

Fórmula Descripción Resultado
Text(1234567.89, "[$-fr-FR]# ###,## €", "fr-FR") Mostra un espazo como separador de agrupación, a coma como separador decimal e como símbolo de moeda. "1 234 567,89 €"
Text(1234567,89; "[$-fr-FR]# ###,## €") Se os datos de orixe seguen o costume francés de usar unha coma como separador decimal, debe cambiar a configuración rezional a francesa e separar os argumentos cun punto e coma en vez de coma para obter o mesmo resultado que antes. "1 234 567,89 €"
Texto (Data(2016,1,31), "dddd mmmm d") Devolve o día da semana, o mes e o día do mes no idioma do usuario actual. Debido a que ningún dos marcadores de posición depende do idioma, non hai necesidade dunha etiqueta de idioma de texto de formato. "Domingo, 31 de xaneiro"
Texto( Date(2016,1,31), "dddd mmmm d", "es-ES" ) Devolve o día da semana, o mes e o día do mes no idioma "es-ES". "domingo enero 31"

Converter valores en texto

Fórmula Descripción Resultado
Texto ( 1234567.89 ) Converte un número nunha cadea. Non hai separadores de miles nin control sobre o número de díxitos antes ou despois do separador decimal; para obter máis control, proporcione os marcadores de posición numéricos como segundo argumento. "1234567.89"
Texto(ValorDataHora("01/04/2003")) Converte un valor de data/hora nunha cadea de texto. Para controlar a conversión, proporcione un membro da enumeración DateTimeFormat ou unha cadea de formato personalizado. "4/1/2003 12:00 a.m."
Texto (verdadero) Converte un valor booleano nunha cadea. "verdadeiro"
Texto(GUID()) Converte un valor GUID xerado nunha cadea. "f8b10550-0f12-4f08-9aa3-bb10958bc3ff"
Esquerda(Texto(GUID()), 4) Devolve os primeiros catro caracteres dun GUID xerado. "2d9c"