Excel 2016 / Помогите создать функцию добавления числа (48,20) в виде часов. Минут к дате (2018-03-04 08:00)


0

Я бы увеличил дату (2018-03-04 08:00) на данное число.

Ex.

Ячейка А1 (2018-03-04 08:00)

Ячейка A2 (48.20) /// Число в часах и минутах, в данном случае это 2 дня и 20 минут

ячейка A3 (добавление чисел A2 к дате A1) = (2018-03-06 08:20)


Почему А2 не отформатирован как время? Десятичное значение в значении 48.20означает две десятых часа , а не 20 минут - так что на самом деле это 12 минут. Если бы это было отформатировано как время, то есть: 48:20тогда это сделало бы это намного легче
K.Dᴀᴠɪs

1
Что сказал К.Дэвис Но если вы получаете данные в этой форме и не можете контролировать, как они вводятся, отформатированы ли они как текст или как число, заданное для отображения двух десятичных знаков? Как появляются однозначные фрагменты (например, 8 часов отображаются как 08 или 8, 2 минуты отображаются как .2 или .02)? Можете ли вы изменить способ хранения A2 (имеет огромное значение в решении)?
fixer1234

Ответы:


1

Если предположить,

  • Содержимое A2 представляет собой десятичное число, представляющее часы и минуты, в формате 00.00 (так что 48 часов, 2 минуты будут 48.02), затем:

=A1+TEXT(A2*100,"00\:00")

Если вы предпочитаете более неясные формулы, попробуйте:

=A1+DOLLARDE(A2,60)/24

-2

Основная трудность в этом вопросе заключается в том, что добавляемое значение записывается в виде десятичного числа 48,20 , но его следует интерпретировать как 48 часов и 20 минут . Это предположительно требование. Этот ответ предполагает, что минуты закодированы в виде двухзначных чисел, поэтому 2 минуты будут .02, а не .2.

Это решение преобразует десятичное число в дни и минуты, а затем добавляет эти числа к дате. Целая часть числа представляет часы, которые можно преобразовать в целые дни с помощью одной из следующих формул в C2:

C2=INT(B2/24)или же

C2=INT(CONVERT(B2,"hr", "day"))

Обратите внимание, что это работает только в тех случаях, когда часы кратны целым дням. Это не даст правильный ответ, если часы не целые дни. Кроме того, вторая формула не будет работать, если записи на самом деле хранятся в виде текста.

Далее дробная часть преобразуется в минуты в ячейке D2:

=100*(B2-TRUNC(B2)) или же

=(B2-INT(B2))*100 или же

=MOD(B2,1)*100

Наконец, эти промежуточные результаты добавляются к дате с использованием этой окончательной формулы в E2:

=DATE(YEAR(A2),MONTH(A2),DAY(A2)+C2)+TIME(HOUR(A2),MINUTE(A2)+D2,SECOND(A2))

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

Примечание: игнорируйте опечатку на этом изображении. Третий столбец должен быть помечен как «Дни», а не «Часы».

Здесь День (A2) + C2 добавляет 2 дня, а Минуты (A2) + D2 добавляет 20 минут.

Окончательный результат в ячейке E2 - 2018-03-06 08:20.

Примечание:

  • A2 и E2 отформатированы как ГГГГ-ММ-ДД ЧЧ: ММ.
  • B2 отформатирован как номер.
  • C2 и D2 отформатированы как общие.

Это решение использует вспомогательные столбцы, чтобы помочь с объяснением. Вспомогательные столбцы можно включить в одну формулу, заменив формулу вспомогательной ячейки ссылкой на ячейку.


Это не отражает вопрос. В вопросе говорится, что в ячейке «добавить» находится число 48,20, и в этом суть вопроса. Этот ответ не имеет никакого отношения к вопросу. Пожалуйста, не публикуйте случайные ответы.
fixer1234

@ fixer1234, OP сказал: «ячейка A3 (добавление чисел A2 к дате A1) = (2018-03-06 08:20)» и именно то, что я предложил OP. Где у А2 48:20, а у А1 2018-03-04 08:00. Данные ОП находятся в Колонном руднике в Роу, это единственное отличие.
Раджеш С

Перечитайте вопрос. A2 содержит десятичное число 48.20, а не время. Вопрос состоит в том, как перевести это значение во время, когда часть 48 означает 48 часов, а часть .20 означает 20 минут, чтобы ее можно было добавить к времени в A1. Комментарии и ответ Рона Розенфельда также проясняют это.
fixer1234

@ fixer1234 ,, "Ячейка A2 (48.20) /// Число в часах и минутах, в данном случае это 2 дня и 20 минут". это Y, я предложил формат ЧЧ: ММ для А2, чтобы получить правильный результат. И почитайте, что К. Дэвис также предложил «Почему А2 не отформатирован как время?»
Раджеш С.

К. Дэвис уже предлагал ОП изменить его на полезный формат. Но это в настоящее время не в этом формате. Вопрос в том, как решить проблему, учитывая текущую отправную точку ОП. Решение, основанное на другой отправной точке, не является ответом на этот вопрос. Если бы это было уже в форме времени, вопрос даже не был бы необходим.
fixer1234
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.