Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Расчёт количества часов между двумя датами, С учётом условий
 
Всем доброго дня!

Насколько я знаю, похожие темы поднимались неоднократно, но, к сожалению, ответа в них я не нашёл.
Имеется файл с датами. Необходимо вычислить количество часов (либо дней, НО не округлённых, т.е. 50 часов - это не 3 дня, а 2,08) между началом всего пр-ва (ячейка B10) и началом пр-ва определённой позиции(для каждой позиции от B13 до B117) с учётом следующих исключений:
1)Воскресенье - выходной
2)В субботу же рабочие часы только с 7 до 19
3)Праздники считаются за выходные дни

Пока что получилось реализовать это через формулу networkdays, но она, к сожалению, округляет часы до полных суток, а этот вариант мне не подходит.
Может у кого-нибудь есть какие-либо идеи по решению данной задачи?
Сортировка выделенного диапазона по трем столбцам, VBA
 
V, супер, спасибо большое за помощь!
Сортировка выделенного диапазона по трем столбцам, VBA
 
Прикрепляю файл для большей наглядности. Сортировка по столбцам F, I, G.
Сверху там есть кнопка, которая активирует мой макрос и который я бы хотел подправить
Изменено: Toficozz - 13.10.2017 09:59:19
Сортировка выделенного диапазона по трем столбцам, VBA
 
Доброго дня!
Честно говоря, я макросы писать не умею, и написал этот макрос из кусков чужих макросов, найденных на просторах интернета.
Но, к сожалению, как написать одно из условий я найти не могу.
Суть макроса в следующем:
-От выделенной строки макрос выделяет диапазон до последней активной ячейки
-Затем сортирует по трём столбцам

Подскажите, пожалуйста, как написать условие, чтобы он начинал сортировать, если выделена именно строка, а я не ячейка.
Если же выделена только ячейка, пусть ничего не делает, либо выдаёт предупреждение.

Всем заранее спасибо!

Код
Sub Сортировка()
'
' Сортировка Macro
'

'
Dim ColValue As Range, RowValue As Range, c As Integer, r As Long, MyRange As Range
   Set ColValue = Cells.Find(What:="*", After:=Range("A1"), LookIn:=xlValues, _
                             LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious)
   c = ColValue.Column
   Set RowValue = Cells.Find(What:="*", After:=Range("A1"), LookIn:=xlValues, _
                             LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious)
   r = RowValue.Row
   Set MyRange = Range(ActiveCell, Cells(r, c))
   MyRange.Select
    ActiveWorkbook.ActiveSheet.Sort.SortFields.Clear
    ActiveWorkbook.ActiveSheet.Sort.SortFields.Add Key:=Range( _
        "F:F"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    ActiveWorkbook.ActiveSheet.Sort.SortFields.Add Key:=Range( _
        "I:I"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    ActiveWorkbook.ActiveSheet.Sort.SortFields.Add Key:=Range( _
        "G:G"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.ActiveSheet.Sort
        .SetRange Selection
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
 
Изменено: Toficozz - 13.10.2017 10:43:00
Тормозит совсем небольшой файл
 
Прошу прощения,  
размер файла сделать меньше 300кб не получается, поэтому, как указано в правилах, выкладываю его в файлообменник  
http://zalil.ru/34057044
Тормозит совсем небольшой файл
 
Готово  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
Тормозит совсем небольшой файл
 
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
Тормозит совсем небольшой файл
 
Товарищи, подскажите в чём может быть дело.  
Файл совсем небольшой, но его первая вкладка - одна большая проблема. Когда я его создавал, всё было ок, но в один прекрасный момент всё испортилось. Проматывание листа вправо тормозит, раскрытие сгруппированных столбцов тормозит, запуск макроса (Macros 2)тормозит (если отключить автоматический пересчёт формул помогает, но не ахти как). Формул и данных там не особо много, поэтому я даже не знаю в чём может быть проблема.  
 
В файле стоит защита от редактирования, но она без пароля, так что можно спокойно её снять.
Страницы: 1
Наверх