1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
|
" codeBody "
" notpretty " ' Dit sub moet in de coderuit voor het kalenderaantekenvel worden geïnstalleerdt. Het zal niet bij allen indien nergens anders geïnstalleerdn werken.
Privé SubWorksheet_Activate ()
Schemerige ws als Aantekenvel, wsCalendar als Aantekenvel
Schemerige rg als Waaier, het meest rgDest als Waaier
Schemerig n zoals lang
'Application.ScreenUpdating = Vals
Vastgestelde wsCalendar = Aantekenvellen („Kalender“)
wsCalendar.Range („a2“, „f10000“). Ontruim
'wsCalendar.Rows (2). Resize (wsCalendar.Rows.Count - 1) .ClearContents
'wsCalendar.Rows.ClearContents
Voor Elke ws in ThisWorkbook.Worksheets
Selecteer Geval ws. Naam
De „kalender“ van het geval, „Huis“, „het Werk Ruimte“ 'negeert deze aantekenvellen
Geval anders
Met ws
'ws. Activeer
Plaats rg =. Waaier („B4“). Resize (.UsedRange.Rows.Count, 5) 'bekijken kolommen B: F, die in rij 4 beginnen
Als (is Snijden niet (rg, .UsedRange) niets) en (rg. Cellen (2, 1) <> "") toen
'rg.AutoFilter- Gebied: =2, Criteria1: = " <= " & (Datum + 5), Exploitant: =xlAnd, Criteria2: = " >= " & (Datum - 5)
'moet de datumformaat van de V.S. zijn
vandaag = Formaat (Datum, „mm-dd-yyyy“)
rg.AutoFilter gebied: =2, Criteria1: = " >= " & vandaag ', Exploitant: =xlAnd, Criteria2: = " >= " & plus5days
Vastgestelde het meest rgDest = wsCalendar.Cells (wsCalendar.UsedRange.Rows.Count + wsCalendar.UsedRange.Row, 2)
het meest rgDest .AutoFilter.Range.Copy
n = wsCalendar.UsedRange.Rows.Count + wsCalendar.UsedRange.Row - rgDest.Row
rgDest.Offset (0, -1). Resize (n, 1). Waarde = ws. Naam
rgDest.Rows (1) .EntireRow.Delete
. Waaier („B4“) .AutoFilter
Eind als
Eind met
Uitgezocht eind
Daarna
Application.ScreenUpdating = Waar
Sub van het eind
|