Из значения XX секунд в ячейке в XXминXXсек

Вопрос или проблема

Я хочу преобразовать мое значение в секундах в формат x мин x секунд. Есть ли какая-то формула, позволяющая сделать это за один раз?

Пример: 67 -> 1м7с, 143 -> 2м23с:

введите описание изображения сюда

Я пробовал =TEXT(AN3/86400, "mm:ss"), результат 00:30. Попробовал еще раз, изменил на “mmss”, в результате получил 0030.

Моя задача состоит в том, чтобы получить 30с, как сделать так, чтобы ноль не убирался, если нет минут и двух цифр (07 сек — это 7 сек) в моем значении.

Используйте следующую формулу, чтобы преобразовать секунды в минуты и секунды.

=B2/(24*60*60)

Затем примените желаемые форматы времени m\mss\s к ячейкам. Если вам нужен форматированный вывод, используйте функцию TEXT() следующим образом:

=TEXT(B2/(24*60*60),"m\mss\s")

введите описание изображения сюда

Я могу предложить следующую формулу, которая избегает всех видов ведущих или завершающих нулей:

=LET(t,A1/86400,m,TEXT(t,"m\m:ss"),s,TEXT(t,"s\s"),IF(LEFT(m,1)<>"0",TEXTBEFORE(m,":"),"")&IF(s<>"0s",s,""))

67 –> 1м7с
37 –> 37с
60 –> 1м

Попробуйте использовать следующую формулу с логикой IFS(), введенной в TEXT():

введите описание изображения сюда


• Формула, использованная в ячейке B1

=LET(
     α, B1,
     δ, α/60,
     Σ, IFS(δ=0,"0",δ<1,"s\s",δ=1,"m\m",1,"m\mss\s"),
     TEXT(α/86400, Σ))

Или, выведите весь массив, нет необходимости заполнять вправо.

=LET(
     α, B1:I1, 
     δ, α/60, 
     Σ, IFS(δ=0,"0",δ<1,"s\s",δ=1,"m\m",1,"m\mss\s"), 
     TEXT(α/86400, Σ))

Или вот так:

введите описание изображения сюда


=MAP(B1:K1,LAMBDA(α,
 LET(δ,TEXTSPLIT(TEXT(α /86400,"m:ss"),,":"),
 IF(α,CONCAT(REPT(δ&{"m";"s"},SIGN(δ))),0))))

Предположим, что значение в секундах находится в ячейке A1, используйте следующую формулу:

=INT(A1/60) & " мин " & MOD(A1,60) & " сек"

Вы можете

  • преобразовать секунды в время: =TIME(0,0,D5:K5)
    • Это является массивной формулой, если вы используете старые версии, пожалуйста, выберите диапазон и введите комбинацией клавиш Control + Shift + Enter
  • Добавить пользовательский формат числа: [m]"м"ss"с"
    • [m] используется для длительности, а "м" — для буквального текста

Результат и форматирование чисел


Если вы не хотите использовать пользовательский формат числа,

=TEXT(TIME(0,0,D5:K5), "[m]""м""ss""с""")

Кавычки нужно дублировать

Ответ или решение

Чтобы преобразовать значение в секундах в формат "x мин x сек", вы можете использовать несколько формул в Excel, которые позволят вам достичь желаемого результата без ведущих нулей и с правильным форматированием.

Формула для преобразования

Если значение секунд находится в ячейке A1, вы можете использовать следующую формулу:

=LET(секунды, A1,
     минуты, INT(секунды / 60),
     оставшиеся_секунды, MOD(секунды, 60),
     IF(минуты > 0, 
        TEXT(минуты, "0") & "m" & TEXT(оставшиеся_секунды, "0") & "s", 
        TEXT(оставшиеся_секунды, "0") & "s"))

Разъяснение формулы:

  1. LET – позволяет объявить переменные, чтобы сделать формулу более читаемой.
  2. секунды – это ваше значение в секундах.
  3. минуты – вычисляет полные минуты, деля общее количество секунд на 60.
  4. оставшиеся_секунды – вычисляет остаток секунд после извлечения полных минут, используя функцию MOD.
  5. IF – проверяет, есть ли какие-либо минуты:
    • Если минуты больше 0, то формируется строка вида "xmy" (где x – число минут, y – число секунд).
    • Если минут нет, возвращается строка вида "ys" (где y – число секунд).

Примеры:

  • 67 секунд преобразуется в "1m7s".
  • 37 секунд преобразуется в "37s".
  • 60 секунд преобразуется в "1m".

Альтернативный вариант без использования LET:

Если вы не хотите использовать функцию LET, можете применить более традиционный способ:

=INT(A1/60) & "m" & MOD(A1,60) & "s"

Однако, это приведет к отображению нулей, например "0m30s" для 30 секунд.

Чтобы избежать отображения минут, когда они равны нулю, используйте первую формулу.

Дополнительные советы:

  • Убедитесь, что значение в ячейке A1 является числом (например, без текстового формата).
  • Если значения в большом диапазоне ячеек и вам нужно применить формулу ко всем ним, можете использовать функцию MAP в сочетании с LAMBDA, что позволит вам обрабатывать массив данных одновременно.

Заключение:

С помощью вышеуказанных формул вы можете легко преобразовывать секунды в человекочитаемые форматы времени, сохраняя стиль представления и избегая ненужных нулей в формате. Если у вас есть дополнительные вопросы или требования, не стесняйтесь спрашивать.

Оцените материал
Добавить комментарий

Капча загружается...