Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Определение длительности периода времени в часах в диапазоне - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Определение длительности периода времени в часах в диапазоне (Формулы/Formulas)
Определение длительности периода времени в часах в диапазоне
Бонифаций Дата: Четверг, 15.11.2018, 16:51 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Вечер добрый.

В столбце встречается такой текст: "546f утро вторпол11, сон23, 345f."
"утро вторпол11," - это 11 утра, а "сон23," - это 23 вечера.
Формула должна как-то вычислить - сколько длился сон - в часах.

То есть нужно взять отметку 23:00 предыдущего дня и вычесть из нее 11:00 - должно получится в общей сумме 12часов.
Как это сделать формулой - и записать в ячейке напротив столбца B5:B20 ?
К сообщению приложен файл: 8355788.xls (70.0 Kb)
 
Ответить
СообщениеВечер добрый.

В столбце встречается такой текст: "546f утро вторпол11, сон23, 345f."
"утро вторпол11," - это 11 утра, а "сон23," - это 23 вечера.
Формула должна как-то вычислить - сколько длился сон - в часах.

То есть нужно взять отметку 23:00 предыдущего дня и вычесть из нее 11:00 - должно получится в общей сумме 12часов.
Как это сделать формулой - и записать в ячейке напротив столбца B5:B20 ?

Автор - Бонифаций
Дата добавления - 15.11.2018 в 16:51
Pelena Дата: Четверг, 15.11.2018, 18:09 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
Прокомментируйте, как получилось то или иное значение в файле-примере, т.к. логика непонятна


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
Прокомментируйте, как получилось то или иное значение в файле-примере, т.к. логика непонятна

Автор - Pelena
Дата добавления - 15.11.2018 в 18:09
Бонифаций Дата: Четверг, 15.11.2018, 18:24 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Pelena, неправильно там записал....

Ну вот первое значение - там где 10 (в ячейке D5).
В тексте: "...ночь перпол2,сон16, ..."
То есть лег спать в 16 часов дня, проснулся в 2 часа ночи.
Это значит что между 16 часами дня - и 2 часами ночи - прошло 10 часов.

В ячейку D5 - вписывается число 10.
Вот примерно так.

Я прикрепил файл с примером - что должно быть в столбце D
К сообщению приложен файл: 0570006.xls (69.5 Kb)


Сообщение отредактировал Бонифаций - Четверг, 15.11.2018, 18:25
 
Ответить
СообщениеPelena, неправильно там записал....

Ну вот первое значение - там где 10 (в ячейке D5).
В тексте: "...ночь перпол2,сон16, ..."
То есть лег спать в 16 часов дня, проснулся в 2 часа ночи.
Это значит что между 16 часами дня - и 2 часами ночи - прошло 10 часов.

В ячейку D5 - вписывается число 10.
Вот примерно так.

Я прикрепил файл с примером - что должно быть в столбце D

Автор - Бонифаций
Дата добавления - 15.11.2018 в 18:24
Pelena Дата: Четверг, 15.11.2018, 18:50 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
С доп. столбцами. Можно и в одну формулу объединить, будет очень длинно.
Решила всё же, что "вторпол" - это после полудня
К сообщению приложен файл: 3545256.xls (72.5 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеС доп. столбцами. Можно и в одну формулу объединить, будет очень длинно.
Решила всё же, что "вторпол" - это после полудня

Автор - Pelena
Дата добавления - 15.11.2018 в 18:50
Бонифаций Дата: Четверг, 15.11.2018, 19:03 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Pelena, у вас в ячейках G9 и G12 - ошибки.
Там "ночь вторпол4" - то есть 4 часа ночи - распознается как 16 часов дня.
 
Ответить
СообщениеPelena, у вас в ячейках G9 и G12 - ошибки.
Там "ночь вторпол4" - то есть 4 часа ночи - распознается как 16 часов дня.

Автор - Бонифаций
Дата добавления - 15.11.2018 в 19:03
Pelena Дата: Четверг, 15.11.2018, 19:18 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Чем тогда отличается "перпол" от "вторпол"?
Исправила

==========
Если "перпол" и "вторпол" - одно и то же, то можно короче (см. файл 2)
К сообщению приложен файл: 6836181.xls (72.5 Kb) · 0570006_2.xls (72.5 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЧем тогда отличается "перпол" от "вторпол"?
Исправила

==========
Если "перпол" и "вторпол" - одно и то же, то можно короче (см. файл 2)

Автор - Pelena
Дата добавления - 15.11.2018 в 19:18
Бонифаций Дата: Четверг, 15.11.2018, 19:39 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Pelena, теперь то что надо.
Спасибо.
 
Ответить
СообщениеPelena, теперь то что надо.
Спасибо.

Автор - Бонифаций
Дата добавления - 15.11.2018 в 19:39
sboy Дата: Пятница, 16.11.2018, 09:17 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Вариант пользовательской функцией
[vba]
Код
Function sleep(t As String)
    If t = "" Then
        sleep = t
        Exit Function
    End If
    
    With CreateObject("vbscript.regexp")
        .Global = True
        .Pattern = "пол(\d+)|сон(\d+)"
            If .test(t) Then
                If Not IsEmpty(.Execute(t)(0).Submatches(0)) Then
                    sleep = .Execute(t)(1).Submatches(1) - .Execute(t)(0).Submatches(0)
                Else
                    sleep = 24 - .Execute(t)(0).Submatches(1) + .Execute(t)(1).Submatches(0)
                End If
            End If
    End With
End Function
[/vba]
К сообщению приложен файл: 2165837.xls (86.5 Kb)


Яндекс: 410016850021169
 
Ответить
СообщениеВариант пользовательской функцией
[vba]
Код
Function sleep(t As String)
    If t = "" Then
        sleep = t
        Exit Function
    End If
    
    With CreateObject("vbscript.regexp")
        .Global = True
        .Pattern = "пол(\d+)|сон(\d+)"
            If .test(t) Then
                If Not IsEmpty(.Execute(t)(0).Submatches(0)) Then
                    sleep = .Execute(t)(1).Submatches(1) - .Execute(t)(0).Submatches(0)
                Else
                    sleep = 24 - .Execute(t)(0).Submatches(1) + .Execute(t)(1).Submatches(0)
                End If
            End If
    End With
End Function
[/vba]

Автор - sboy
Дата добавления - 16.11.2018 в 09:17
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Определение длительности периода времени в часах в диапазоне (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!