'Эту подводную лодку необходимо установить в форточку Кодего для рабочий лист календара. Она не будет работать на всех если установлено в другом месте.
Приватное Sub Worksheet_Activate ()
Тусклый ws как рабочий лист, wsCalendar как рабочий лист
Тусклое rg как ряд, rgDest как ряд
Тусклый n как длиной
Application.ScreenUpdating = ложно
Установленное wsCalendar = рабочий лист («календар»)
wsCalendar.Rows (2).Resize (wsCalendar.Rows.Count - 1).Delete
Для каждого ws в ThisWorkbook.Worksheets
Выберите случай ws. Имя
Покрывайте «календар», «домашн», «место для работы» 'проигнорируйте эти рабочий лист
Покрывайте еще
С ws
Установите rg =. Ряд («B4»). Измените размеры (.UsedRange.Rows.Count, 5) 'взгляд на колонках b: F, начиная в рядке 4
Если (не пересечь (rg, .UsedRange) ничего) и, то (rg. Клетки (1, 2) <> "") после этого
поле rg.AutoFilter: =2, Criteria1: = "<> = " & (дата - 5)
Установленное rgDest = wsCalendar.Cells (wsCalendar.UsedRange.Rows.Count + wsCalendar.UsedRange.Row, 2)
.AutoFilter.Range.Copy rgDest
n = wsCalendar.UsedRange.Rows.Count + wsCalendar.UsedRange.Row - rgDest.Row
rgDest.Offset (0, -1). Измените размеры (n, 1).Value = ws. Имя
rgDest.Rows (1).EntireRow.Delete
. Ряд («B4») .AutoFilter
Закончитесь если
Закончитесь с
Закончите отборное
Затем
Application.ScreenUpdating = True
Подводная лодка конца
|