Поділитися через


Text функція

Застосовується до: Canvas apps Copilot Studio Desktop flows Dataverse formula columns Model-driven apps Power Platform CLI Dataverse functions Power Pages

Перетворює будь-яке значення та форматує число або значення дати й часу на рядок тексту.

Опис

Функція Text форматує число або значення дати й часу на основі одного з таких аргументів:

  • Попередньо визначений формат дати й часу, який ви задаєте за допомогою перелічення DateTimeFormat. Для дат і часу цей підхід є кращим, оскільки він автоматично підлаштовується під мову та регіон кожного користувача.
  • Настроюваний формат, який містить рядок заповнювачів, що визначають, наприклад, чи має в числах відображатись десятковий роздільник, а в датах – повна назва місяця, місяць як абревіатура або місяць як число. Power Apps підтримує таку ж підмножину заповнювачів, як і Microsoft Excel. У цьому рядку заповнювач мови визначає мову, якою слід інтерпретувати інші заповнювачі. Якщо настроюваний формат містить, наприклад, крапку, то заповнювач формату мови визначає, чи ця крапка є десятковим роздільником (ja-JP), чи роздільником тисяч (es-ES).

Додаткову інформацію див. в статті про роботу з датами й часом.

Ця Text функція також може перетворити будь-який тип даних на подання тексту за допомогою стандартного формату. Цей спосіб використовується для передавання нетекстових значень до текстових функцій, наприклад Len, Right та IsMatch.

Попередньо визначені формати дати й часу

У цих прикладах використано такі дату й час: вівторок, 7 квітня 2020 року 20:26:59.180, у часовому поясі UTC-7.

Перелічення DateTimeFormat Опис Приклади (для en-US)
LongDate Чотиризначний рік, назва місяця, день місяця і день тижня. Назви місяця та дня тижня не скорочені. "Вівторок, 7 квітня 2020 р."
LongDateTime Чотиризначний рік, назва місяця, день місяця та день тижня, а також година (12-годинний формат), хвилини, секунди та позначення AM/PM. Назви місяця та дня тижня не скорочені. "Вівторок, 7 квітня 2020 р. 8:26:59 PM"
LongDateTime24 Чотиризначний рік, місяць, день місяця та день тижня, а також година (24-годинний формат), хвилини та секунди. Назви місяця та дня тижня не скорочені. "Вівторок, 7 квітня 2020 р. 20:26:59"
Давній Година (12-годинний формат), хвилини, секунди і позначення AM/PM. "8:26:59 PM"
LongTime24 Година (24-годинний формат), хвилини, секунди. "20:26:59"
Коротка дата Чотиризначний рік з числовим значенням місяця і днем місяця. "4/7/2020"
ShortDateTime Чотиризначний рік з числовим значенням місяця і днем місяця, а також година (12-годинний формат), хвилини та позначення AM/PM. "07.04.2020 20:26"
ShortDateTime24 Чотиризначний рік з числовим значенням місяця і днем місяця, а також година (24-годинний формат) та хвилини. "4/7/2020 20:26"
Короткий час Година (12-годинний формат), хвилини і позначення AM/PM. "8:26 PM"
Короткий час24 Година (24-годинний формат) і хвилини. "20:26"
UTC Значення дати та часу буде перетворено на UTC на основі поточного часового поясу користувача та відформатовано за стандартом ISO 8601. "2020-04-08T03:26:59.180Z"

Заповнювачі для чисел

Заповнювач Опис
0 (нуль) Відображає неважливі нулі, якщо число містить менше цифр, ніж є нулів у форматі. Наприклад, використовуйте формат #.00, якщо потрібно показати 8.9 як 8.90.
# Дотримується тих самих правил, що й 0 (нуль). Однак зайві нулі не повертаються, Text якщо число має менше цифр з обох боків десяткової коми, ніж символів #у форматі. Наприклад, 8.9 відображається, якщо за допомогою настроюваного формату #.## форматується число 8.9.
. (крапка) Відображає десятковий роздільник у числі. Залежить від мови настроюваного формату; додаткові відомості див. в глобальних програмах.
, (кома) Відображає груповий роздільник у числі, що часто використовується для тисяч. Text відокремлює групи крапкою з комою, якщо формат містить кому, оточену знаками чисел (#) або нулями. Залежить від мови настроюваного формату; додаткові відомості див. в глобальних програмах.

Якщо в числі більше цифр праворуч від десяткового роздільника, ніж заповнювачів у форматі, число округляється до стількох знаків після коми, скільки є заповнювачів. Якщо цифр ліворуч від десяткового роздільника більше, ніж заповнювачів, відображатимуться всі цифри. Якщо формат містить лише знаки номера (#) ліворуч від десяткового роздільника, числа менше 1 починаються десятковим роздільником (наприклад, .47).

Заповнювачі дати й часу

Заповнювач Опис
m Відображає місяць у вигляді числа без нуля на початку.
mm Відображає місяць у вигляді числа з нулем на початку у відповідних випадках.
mmm Відображає місяць як абревіатуру (січгру).
mmmm Відображає повну назву місяця (січеньгрудень).
d Відображає день у вигляді числа без нуля на початку.
dd Відображає день у вигляді числа з нулем на початку у відповідних випадках.
ddd Відображає день як абревіатуру (пннд).
dddd Відображає повну назву дня (понеділокнеділя).
yy Відображає рік як двозначне число.
yyyy Відображає рік як чотиризначне число.
h Відображає годину у вигляді числа без нуля на початку.
hh Відображає годину у вигляді числа з нулем на початку у відповідних випадках. Якщо формат містить AM або PM, година відображається в 12-годинному форматі. В іншому разі година відображається в 24-годинному форматі.
m Відображає хвилини у вигляді числа без нуля на початку.

Цей покажчик місця заповнення має з'явитися відразу після коду h або hh або безпосередньо перед кодом ss ; Text в іншому разі повертає місяць замість хвилин.
mm Відображає хвилини у вигляді числа з нулем на початку у відповідних випадках.

Цей заповнювач має з’являтися відразу після заповнювача h чи hh або відразу перед заповнювачем ss. Text В іншому разі повертає місяць замість хвилин.
s Відображає секунди у вигляді числа без нуля на початку.
ss Відображає секунди у вигляді числа з нулем на початку у відповідних випадках.
f Відображає частки секунд.
AM/PM,a/p Відображає годину в 12-годинному форматі. Text повертає "AM" або "a" для часу з півночі до полудня, а "PM" або "p" для разів з полудня до півночі

Заповнювачі для літералів

У рядок формату можна додати будь-які з цих символів. Вони з'являться в результаті Text як є. Додаткові символи зарезервовано для майбутніх заповнювачів, тому їх не можна використовувати.

Символ Опис
Будь-який символ грошової одиниці Знак долара, знак цента, знак євро тощо.
+ Знак "плюс"
( Ліва кругла дужка
: Двокрапка
^ Діакритичний знак (кришка)
Апостроф
{ Ліва фігурна дужка
< Знак "менше"
= Знак рівності
- Знак "мінус"
/ Скісна риска
) Права кругла дужка
& Амперсанд
~ Тильда
} Права фігурна дужка
> Знак "більше"
  Символ пробілу

Глобальні програми

Функція Text глобально обізнана. Вона вміє правильно писати дати, час, грошові одиниці та числа для широкого набору мов. Для роботи їй потрібні такі дані:

  • Мова користувальницького формату: Для виробників, як слід інтерпретувати користувальницький формат? Символи-роздільники (. і ,) мають різні значення в різних мовах. Якщо ви вказали настроюваний формат, ви можете включити заповнювач мови або скористатися стандартним значенням, яке відповідає мові вашого пристрою. Або ще простіше: ви можете використати один із попередньо визначених форматів дати/часу, які незалежні від мови.
  • Мова результату: Для користувачів, якою мовою повинен відображатися результат функції? Імена місяців і будніх мають бути відповідною мовою для користувача програми, яку можна вказати, додавши до Text функції третій необов'язковий аргумент.

Для обох параметрів ви вказуєте мову за допомогою тега мови. Щоб переглянути список підтримуваних мов, у рядку формул або на вкладці Додатково праворуч введіть Text( 1234, "",) і прокрутіть список мов, запропонованих для третього аргументу.

Заповнювач мови

Щоб вказати мову настроюваного формату, використайте:

Заповнювач Опис
[$-LanguageTag] LanguageTag — це тег мови, який повертається з функції Language . Він може вказати лише мову (наприклад, [$-en] для англійської) або ще й регіон (наприклад, [$-en-GB] для подальшого визначення Великобританії).

Заповнювач мови може відображатися будь-де в настроюваному форматі, але лише один раз.

Якщо ви задали настроюваний формат без заповнювача мови, а формат є неоднозначним з глобальної точки зору, то тег мови для вашої поточної мови вставиться автоматично.

[$-en-US] припускається, якщо цей заповнювач відсутній під час запуску програми.

Нотатка

У майбутній версії синтаксис цього заповнювача може змінитися, щоб уникнути плутанини з аналогічним (але іншим) заповнювачем, який підтримує Excel.

Тег мови результату

Результат Text включає перекладені рядки для місяців, робочих днів і позначення AM/PM, а також відповідних груп і десяткових роздільників.

За замовчуванням використовується мова користувача, Text який запускає програму. Функція Language повертає тег мови для поточного користувача. Це стандартне значення можна перевизначити, навівши для третього аргументу позначку мови .Text

Синтаксис

Text( NumberOrDateTime, DateTimeFormatEnum [, ResultLanguageTag ] )

  • NumberOrDateTime - обов’язковий. Число або значення дати й часу для форматування.
  • DateTimeFormat - Обов’язковий. Елемент переліку DateTimeFormat.
  • ResultLanguageTag - необов’язковий. Тег мови для тексту результату. За замовчуванням використовується мова поточного користувача.

Text( NumberOrDateTime, CustomFormat [, ResultLanguageTag ] )

  • Кількість - обов’язковий. Число або значення дати й часу для форматування.
  • CustomFormat - обов’язковий. Один або кілька заповнювачів, взятих у подвійні лапки.
  • ResultLanguageTag - необов’язковий. Тег мови для тексту результату. За замовчуванням використовується мова поточного користувача.

Text( Будь-яке значення )

  • AnyValue - обов’язковий. Значення, яке потрібно перетворити на подання тексту. Використовується стандартний формат.

Text ( Динамічний )

  • Динамічний – обов'язковий аргумент. Динамічне значення, яке представляє рядок. Прийнятні значення залежать від нетипізованого постачальника. Якщо для JSON динамічне значення – число або логічне значення, його буде перетворено на текст.

Приклади

Якщо не вказано інше, користувач, який виконує ці формули, перебуває у Сполучених Штатах Америки і вибрав англійську мову. Функція Language повертає "en-US".

Номер

Формула Опис Результат
Text( 1234.59, "####.#" ) Форматує число з одним знаком після десяткового роздільника. "1234.6"
Text( 8.9, "#.000" ) За потреби додає до десяткової частини числа нулі в кінці. "8.900"
Text( 0.631, "0.#" ) За потреби додає до цілої частини числа нулі на початку. "0.6"
Text( 12, "#.0#" )
Text( 1234.568, "#.0#" )
Додає до десяткової частини числа нулі для одного знаку після десяткового роздільника, але включає й другий знак, якщо він надається. "12.0"
"1234.57"
Text( 12000, "$ #,###" )
Text( 1200000, "$ #,###" )
Розташовує роздільник тисяч через кожні три цифри, а також включає символ грошової одиниці. "$ 12000"
"$ 1 200 000"

Дата/час

  • О 2:37:47 PM в понеділок, 23 листопада 2015 р.
  • Тихоокеанський часовий пояс США (UTC-8)
Формула Опис Результат
Text(Now(), DateTimeFormat.LongDate ) Форматує як довгий рядок дати, мовою та з локалізацією поточного користувача. "Понеділок, 23 листопада 2015 р."
Text(Now(), DateTimeFormat.LongDateTime ) Форматує як довгий рядок дати й часу, мовою та з локалізацією поточного користувача у 12-годинному форматі. "Понеділок, 23 листопада 2015 р. 2:37:47 PM"
Text( Now(), DateTimeFormat.LongTime24 ) Форматує як короткий рядок часу у 24-годинному форматі. "14:37:47"
Text(Now(), DateTimeFormat.ShortDate ) Форматує як короткий рядок дати, мовою та з локалізацією поточного користувача. "11/23/2015"
Text( Now(), "d-mmm-yy" ) Форматує з використанням символів заповнювачів:
  • d для однозначного або двозначного числа місяця
  • - у вигляді буквального символу, скопійованого до результату
  • ммм для трибуквеної абревіатури місяця
  • - як інший буквальний символ, скопійований до результату
  • yy — двозначна абревіатура року
"23-лис-15"
Text(1448318857*1000, "ммм. dd, yyyy (hh:mm:ss AM/PM)") Показує значення дати й часу Unix у форматі, який може прочитати людина, якщо помножити вихідне значення на 1000. "23 лис 2015 р. (02:47:37 PM)"

Глобальні програми

Формула Опис Результат
Text(1234567.89, "[$-fr-FR]# ##### €", "fr-FR") Показує пробіл як роздільник групування, кому як десятковий роздільник і як символ грошової одиниці. "1 234 567,89 €"
Text(1234567,89; "[$-fr-FR]# ###,## €") Якщо вихідні дані дотримуються французького звичаю використання коми як десяткового роздільника, необхідно змінити локалізацію на французьку та відокремлювати аргументи крапкою з комою замість коми, щоб отримати такий самий результат, як вище. "1 234 567,89 €"
Text( Date(2016;1,31), "dddd mmmm d" ) Повертає день тижня, місяць і день місяця мовою поточного користувача. Оскільки жоден із заповнювачів не залежить від мови, не потрібно вказувати тег мови для форматування тексту. "Неділя Січень 31"
Text( Date(2016,1,31), "dddd mmmm d", "es-ES" ) Повертає день тижня, місяць і день місяця мовою "es-ES". "100000000000000000000000000000

Перетворення значень на текст

Формула Опис Результат
Text( 1234567.89 ) Перетворює число на рядок. Немає розділювачів тисяч і контролю над кількістю цифр до або після десяткового роздільника; для більшого контролю вкажіть кількість заповнювачів як другий аргумент. "1234567.89"
Text( DateTimeValue( "04.01.2003" ) Перетворює значення дати й часу на рядок тексту. Щоб керувати перетворенням, укажіть елемент переліку DateTimeFormat або рядок у настроюваному форматі. "04.01.2003 12:00"
Text(істина) Перетворює логічне значення на рядок. "true"
Text(GUID() ) Перетворює значення згенерованого ідентифікатора GUID на рядок. "f8b10550-0f12-4f08-9aa3-bb10958bc3ff"
Left( Text( GUID() ), 4 ) Повертає перші чотири символи згенерованого ідентифікатора GUID. "2d9c"