Добавить лидирующие нули в функцию Datedif в Google Sheets - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть простая функция, которая показывает мне данные с помощью Datedif в Google Sheets. Функция показывает мне годы, месяцы и дни, оставшиеся между двумя датами. Это также показывает мне общее количество дней между датами. Я хочу сохранить синтаксис и внешний вид результатов, добавив в функцию начальные нули (например, показывая 05 для мая вместо 5, чтобы результаты оставались согласованными).

Вот функция:

=DATEDIF(TODAY(),D28,"Y")&"Y "&DATEDIF(TODAY(),D28,"YM")&"M "&DATEDIF(TODAY(),D28,"MD")&"D ("&DATEDIF(TODAY(),D28,"D")&")"

Результаты могут выглядеть так:

1Y 1M 22D (416)
2Y 10M 11D (1045)
7Y 8M 30D (2829)
22Y 11M 7D (8377)
29Y 7M 6D (10811)

Я хочу, чтобы это выглядело так:

01Y 01M 22D (416)
02Y 10M 11D (1045)
07Y 08M 30D (2829)
22Y 11M 07D (8377)
29Y 07M 06D (10811)

Я уверен, что есть простой способ чтобы выполнить sh это, но я не мог понять комбинацию.

1 Ответ

1 голос
/ 26 февраля 2020

Вы хотите сохранить начальные нули в своих вычислениях.

Форматирование ячейки не работает, поскольку значение в ячейке - текст, а не число. Итак, преобразуйте значение в текст, используя TEXT и используйте атрибут «format» для форматирования числа в формате числа в формуле.

В следующей формуле предполагается, что справочная дата находится в ячейке B11.


=TEXT(DATEDIF(TODAY(),$B$11,"Y"),"00")&"Y "&TEXT(DATEDIF(TODAY(),$B$11,"YM"),"00")&"M "&TEXT(DATEDIF(TODAY(),$B$11,"MD"),"00")&"D ("&DATEDIF(TODAY(),$B$11,"D")&")"


enter image description here

...