Как * форматировать * продолжительность времени как чч: мм: сс в LibreOffice / Excel?

Я хотел бы скопировать продолжительность времени (в секундах) в ячейку, а затем отобразить ее как (чч:) мм: сс или подобное. Например:

Input: 0.49
Display: 0.49 or 0.49s or 490ms (any will do)

Input: 857.26
Display: 14:17 or 14m17s

Я знаю, что есть способы сделать это: 1) когда продолжительность вводится в формате чч: мм: сс, или 2) с помощью формулы / макроса, чтобы преобразовать содержимое ячейки в Другая ячейка, где она отображается по желанию. Мне было интересно, можно ли использовать диалоговое окно форматирования (аналогично настраиваемым форматам даты / времени, которые, как я знаю, возможны), чтобы после заполнения ячейки форматирование выполнялось «на месте».

2 ответа
2

Надеюсь, это даст вам некоторые идеи и укажет правильное направление.

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

Я вижу, мне следовало проверить это на орфографию, но ты поймешь.

    Чтобы преобразовать значение “на месте”, выберите ячейки, которые нужно преобразовать, и запустите этот макрос:

    Sub ConvertSecondsToTime()
        Dim r As Range, tm As Double
        Dim v As Double
        v = 86400
        
        For Each r In Selection
            tm = r.Value / v
            r.Value = tm
            r.NumberFormat = "[hh]:mm:ss.000"
        Next r
    End Sub
    

    До:

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

    и после:

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

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

      Ваш адрес email не будет опубликован. Обязательные поля помечены *