0% found this document useful (0 votes)
102 views23 pages

Employee In-Out Board v1.0

This document provides a table of contents for a VBA code book that contains multiple projects and modules related to an employee in/out board application. The table lists declarations, subs, and functions within documents and modules for projects like the employee in/out board, auto workshop manager, userform data mapping, and more. It gives the reader an overview of the code structure and organization within the VBA code book.

Uploaded by

ecomptable875
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
102 views23 pages

Employee In-Out Board v1.0

This document provides a table of contents for a VBA code book that contains multiple projects and modules related to an employee in/out board application. The table lists declarations, subs, and functions within documents and modules for projects like the employee in/out board, auto workshop manager, userform data mapping, and more. It gives the reader an overview of the code structure and organization within the VBA code book.

Uploaded by

ecomptable875
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 23

VBA PDF # 24-328 Since 2020 2021 - V1.

4
Your Free Workbook The Training Video Got Questions?
Download Here Watch Here Join Our 65K Community

Februari 20, 2024 by Rob Haman (ROB’s EXCEL SUPPORT)

Excel For Freelancers – Randy Austin


20-02-204

Facebook – Excel For Freelancers Group

This VBA Code book is intended to be used as an Aid for


Excel VBA Users & Developers to give a better readability
and insight on the used VBA code.

VBACodePrint

AUTO WORKSHOP USERFORM DATA GETTING THINGS DONE MULTI-LINGUAL PURCHASE MANAGER
MANAGER (14-327) MAPPING (24-326) (24-325) INTERGRATION (24-324) (24-323)

USERFORM POINT OF ULTIMATE SHOPPING TREE VIEW CONTROL INVOICE WITH THE ULTIMATE CRM
SALE (24-322) LIST (24-321) (23-320) INSTALLMENT PAYMENTS APPLICATION (23-318)
(23-319)

VBA PDF # 24-328 Since 2020 2021 - V1.4


Table of Contents
Projects .....................................................................................................................................................................................................................4
Employee_In_Out_Board ......................................................................................................................................................................................4
Documents ........................................................................................................................................................................................................4
Admin ............................................................................................................................................................................................................4
(Declarations) ............................................................................................................................................................................................4
Worksheet_SelectionChange [Sub ] .........................................................................................................................................................4
EmplBoard ....................................................................................................................................................................................................5
(Declarations) ............................................................................................................................................................................................5
Worksheet_Change [Sub ] ........................................................................................................................................................................5
Worksheet_SelectionChange [Sub ] .........................................................................................................................................................5
EmployeeDB .................................................................................................................................................................................................6
(Declarations) ............................................................................................................................................................................................6
EntryDB .........................................................................................................................................................................................................7
(Declarations) ............................................................................................................................................................................................7
Sheet4 ...........................................................................................................................................................................................................8
(Declarations) ............................................................................................................................................................................................8
ThisWorkbook ...............................................................................................................................................................................................9
(Declarations) ............................................................................................................................................................................................9
Modules ..........................................................................................................................................................................................................10
Admin_Macros ............................................................................................................................................................................................10
(Declarations) ..........................................................................................................................................................................................10
Admin_SetLocationColor [Sub ] ..............................................................................................................................................................10
BrowseForEmployeePicFolder [Sub ] .....................................................................................................................................................10
BrowseForMainSharedFolder [Sub ] .......................................................................................................................................................10
Board_Macros .............................................................................................................................................................................................11
(Declarations) ..........................................................................................................................................................................................11
Board_NextDay [Sub ] .............................................................................................................................................................................11
Board_PrevDay [Sub ] .............................................................................................................................................................................11
Board_Today [Sub ] ................................................................................................................................................................................11
RefreshBoard [Sub ] ................................................................................................................................................................................11
SelectEntry [Sub ] ...................................................................................................................................................................................12
Entry_Macros ..............................................................................................................................................................................................13
(Declarations) ..........................................................................................................................................................................................13
Entry_ClockIn [Sub ] ...............................................................................................................................................................................13
Entry_ClockOut [Sub ].............................................................................................................................................................................13
Entry_Delete [Sub ] .................................................................................................................................................................................13
Entry_Load [Sub ] ...................................................................................................................................................................................13
Entry_New [Sub ] ....................................................................................................................................................................................13
Entry_SaveUpdate [Sub ]........................................................................................................................................................................13
PopUp_Calendar ........................................................................................................................................................................................15
(Declarations) ..........................................................................................................................................................................................15
CalCol [Sub ] ...........................................................................................................................................................................................15
CalendarHide [Sub ] ................................................................................................................................................................................15
CalendarShow [Sub ] ..............................................................................................................................................................................15
CalFormulaReplacement [Sub ] ..............................................................................................................................................................16
CheckForSheet [Sub ] .............................................................................................................................................................................16
CreateCalSht [Sub ] ................................................................................................................................................................................16
GroupCal [Sub ] ......................................................................................................................................................................................18
MacroLinkRemover [Sub ] ......................................................................................................................................................................19
NextMonth [Sub ] ....................................................................................................................................................................................19
NextYear [Sub ] .......................................................................................................................................................................................19
PrevMonth [Sub ] ....................................................................................................................................................................................20
PrevYear [Sub ] .......................................................................................................................................................................................20
ReplaceCalendar [Sub ] ..........................................................................................................................................................................20
SelectDay [Sub ] .....................................................................................................................................................................................20
ShowSettings [Sub ] ................................................................................................................................................................................20
UnGroupCal [Sub ] ..................................................................................................................................................................................21

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 3 of 23


Admin Employee_In_Out_Board

1 Option Explicit
2
3 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
4 If Target.CountLarge > 1 Then Exit Sub
5 If Shapes("ColorPalette" ).Visible = True Then Shapes("ColorPalette" ).Visible = msoFalse

6
7 'Show color palette
8 If Not Intersect(Target, Range("C8:C19" )) Is Nothing Then
9 With Shapes("ColorPalette" )
10 .Left = Range("C" & Target.Row).Left
11 .Top = Range("C" & Target.Row + 1).Top
12 .Visible = msoCTrue
13 End With
14 End If
15
16 'Default Location Selection
17 If Not Intersect(Target, Range("D9:D18" )) Is Nothing And Range("B" & Target.Row).Value <> Empty
Then
18 Range("D9:D18" ).ClearContents
19 Target.Value = Chr(252) 'Checkmark
20 End If
21
22 End Sub

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 4 of 23


EmplBoard Employee_In_Out_Board

1 Option Explicit
2
3 Private Sub Worksheet_Change(ByVal Target As Range)
4 If Not Intersect(Target, Range("H2" )) Is Nothing And Range("H2" ).Value <> Empty Then
RefreshBoard
5 End Sub
6
7 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
8 If Target.CountLarge > 1 Then Exit Sub
9 If Shapes("Calendar" ).Visible = True Then CalendarHide
10 If Not Intersect(Target, Range("H2" )) Is Nothing Then CalendarShow
11 'On Checkbox selection
12 If Not Intersect(Target, Range("D4:D28" )) Is Nothing And Range("E" & Target.Row).Value <> Empty
Then
13 If Target.Value = Chr(111) Then Target.Value = Chr(254) Else Target.Value = Chr(111)

14 Range("E4" ).Select
15 RefreshBoard
16 End If
17 End Sub

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 5 of 23


EmployeeDB Employee_In_Out_Board

1 Option Explicit

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 6 of 23


EntryDB Employee_In_Out_Board

1 Option Explicit

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 7 of 23


Sheet4 Employee_In_Out_Board

1 Option Explicit

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 8 of 23


ThisWorkbook Employee_In_Out_Board

1 Option Explicit

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 9 of 23


Admin_Macros Employee_In_Out_Board

1 Option Explicit
2 Dim SelRow As Long, IconName As String, PicPath As String
3
4 Sub Admin_SetLocationColor()
5 ActiveCell.Interior.Color = Admin.Shapes(Application.Caller).Fill.ForeColor.RGB
6 Admin.Shapes("ColorPalette" ).Visible = msoFalse
7 End Sub
8
9 Sub BrowseForEmployeePicFolder()
10 Set PicFolder = Application.FileDialog(msoFileDialogFolderPicker)
11 With PicFolder
12 .Title = "Browse Product Picture Folder"
13 .AllowMultiSelect = False
14 If .Show <> -1 Then GoTo NoSelection
15 Admin.Range("C4" ).Value = .SelectedItems(1)
16 End With
17 NoSelection:
18 End Sub
19
20 Sub BrowseForMainSharedFolder()
21 Dim SharedFolder As FileDialog
22 Set SharedFolder = Application.FileDialog(msoFileDialogFolderPicker)
23 With SharedFolder
24 .Title = "Please select the main shared folder within Dropbox as instructed by your
Administrator"
25 .AllowMultiSelect = False
26 If .Show <> -1 Then GoTo NotSelected
27 Admin.Range("C3" ).Value = .SelectedItems(1) 'Full Folder Path
28 NotSelected:
29 End With
30 End Sub

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 10 of 23


Board_Macros Employee_In_Out_Board

1 Option Explicit
2 Dim LastRow As Long, LastResultRow As Long, ResultRow As Long
3 Dim BoardRow As Long, LocRow As Long, EmplRow As Long, TypeRow As Long
4 Dim EntryID As String, ClockIn As String, ClockOut As String, Location As String, EmplType As
String, EmplID As String
5 Dim LocColor As String, EmplName As String, PicPath As String, PicName As String
6 Dim BoardShp As Shape
7
8 Sub Board_NextDay()
9 EmplBoard.Range("H2" ).Value = EmplBoard.Range("H2" ).Value + 1
10 End Sub
11
12 Sub Board_PrevDay()
13 EmplBoard.Range("H2" ).Value = EmplBoard.Range("H2" ).Value - 1
14 End Sub
15
16 Sub Board_Today()
17 EmplBoard.Range("H2" ).Value = Date
18 End Sub
19
20 Sub RefreshBoard()
21 'Clear out existing board
22 For Each BoardShp In EmplBoard.Shapes
23 On Error Resume Next
24 If InStr(BoardShp.Name, "BoardEnt" ) > 0 Then BoardShp.Delete
25 If InStr(BoardShp.Name, "BoardPic" ) > 0 Then BoardShp.Delete
26 On Error GoTo 0
27 Next BoardShp
28
29 'Get Entry Data
30 With EntryDB
31 LastRow = .Range("A99999" ).End(xlUp).Row
32 If LastRow < 4 Then Exit Sub
33 If EmplBoard.Range("D4" ).Value = Chr(111) Then 'Include both clocked in and clocked out

34 .Range("A3:G" & LastRow).AdvancedFilter xlFilterCopy, CriteriaRange:=.Range("K2:L3" ),


CopyToRange:=.Range("Q2:W2" ), Unique:=True
35 Else 'Not Clocked out
36 .Range("A3:G" & LastRow).AdvancedFilter xlFilterCopy, CriteriaRange:=.Range("K2:M3" ),
CopyToRange:=.Range("Q2:W2" ), Unique:=True
37 End If
38 LastResultRow = .Range("Q99999" ).End(xlUp).Row
39 If LastResultRow < 3 Then Exit Sub
40 Application.ScreenUpdating = False
41 If LastResultRow < 4 Then GoTo SkipSort
42 With .Sort
43 .SortFields.Clear
44 .SortFields.Add Key:=EntryDB.Range("S3" ), SortOn:=xlSortOnValues, Order:=xlAscending,
DataOption:=xlSortNormal 'Sort
45 .SetRange EntryDB.Range("Q3:W" & LastResultRow) 'Set Range
46 .Apply 'Apply Sort
47 End With
48 SkipSort:
49 BoardRow = 4 'Set initial value
50 For ResultRow = 3 To LastResultRow
51 EntryID = .Range("Q" & ResultRow).Value 'Entry ID
52 EmplID = .Range("R" & ResultRow).Value 'Empl. ID
53 EmplName = .Range("S" & ResultRow).Value 'Employee Name
54 EmplType = .Range("T" & ResultRow).Value 'Employee Type
55 Location = .Range("U" & ResultRow).Value 'Location
56 ClockIn = Format(.Range("V" & ResultRow).Value, "HH:MM AM/PM" ) 'Clock in time
57 ClockOut = Format(.Range("W" & ResultRow).Value, "HH:MM AM/PM" ) 'Clock Out Time
58 On Error Resume Next
59 TypeRow = EmplBoard.Range("E17:E28" ).Find(EmplType, , xlValues, xlWhole).Row
60 On Error GoTo 0
61 If TypeRow = 0 Then GoTo SkipCheck
62 If EmplBoard.Range("D" & TypeRow).Value = Chr(111) Then GoTo NextEntry
63 On Error Resume Next
64 LocRow = Admin.Range("Locations" ).Find(Location, , xlValues, xlWhole).Row
1 2 3

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 11 of 23


Board_Macros Employee_In_Out_Board
1 2 3
65 On Error GoTo 0
66 If LocRow = 0 Then GoTo SkipCheck
67 If EmplBoard.Range("D" & LocRow - 3).Value = Chr(111) Then GoTo NextEntry
68 LocColor = Admin.Range("C" & LocRow).Interior.Color 'Entry Location Color
69 SkipCheck:
70 With EmplBoard
71 .Shapes("SampleEntryItem" ).Duplicate.Name = "BoardEnt" & EntryID
72 With .Shapes("BoardEnt" & EntryID)
73 .Left = EmplBoard.Range("G" & BoardRow).Left
74 .Top = EmplBoard.Range("G" & BoardRow).Top
75 .Width = EmplBoard.Range("G:I" ).Width 'Width of shape
76 .Height = EmplBoard.Range("G" & BoardRow & ":I" & BoardRow + 1).Height - 2
77 .TextFrame2.TextRange.Text = EmplName & ": " & Location & " Clock In: " & ClockIn & " -
Clock Out: " & ClockOut
78 If LocColor <> "" Then .Fill.ForeColor.RGB = LocColor
79 .OnAction = "SelectEntry"
80 End With
81 .Shapes("SampleEmpPic" ).Duplicate.Name = "BoardPic" & EntryID
82 On Error Resume Next
83 EmplRow = EmployeeDB.Range("Empl_ID" ).Find(EmplID, , xlValues, xlWhole).Row
84 On Error GoTo 0
85 With .Shapes("BoardPic" & EntryID)
86 .Left = EmplBoard.Range("G" & BoardRow).Left
87 .Top = EmplBoard.Range("G" & BoardRow).Top
88 .Width = EmplBoard.Range("G" & BoardRow & ":I" & BoardRow + 1).Height - 2
89 .Height = EmplBoard.Range("G" & BoardRow & ":I" & BoardRow + 1).Height - 2
90 .OnAction = "SelectEntry"
91 If EmplRow = 0 Then GoTo SkipPic
92 PicName = EmployeeDB.Range("M" & EmplRow).Value 'Employee Picture Name
93 PicPath = [AppSharedFolder] & "\Employee Pictures\" & PicName 'Full Picture File Path

94 If Dir(PicPath, vbDirectory) <> Empty Then .Fill.UserPicture (PicPath) 'Add Employee


Picture
95 SkipPic:
96 End With
97 EmplRow = 0 'clear Employee Row
98 LocRow = 0
99 TypeRow = 0
100 BoardRow = BoardRow + 2
101 End With
102
103 NextEntry:
104 Next ResultRow
105
106 Application.ScreenUpdating = True
107 End With
108
109 End Sub
110
111 Sub SelectEntry()
112 EmplBoard.Range("B2" ).Value = Replace(Application.Caller, Left(Application.Caller, 8), "" )

113 Entry_Load
114 End Sub

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 12 of 23


Entry_Macros Employee_In_Out_Board

1 Option Explicit
2 Dim EntryRow As Long, EntryCol As Long, DefLocRow
3
4 Sub Entry_ClockIn()
5 EmplBoard.Range("L8" ).Value = Now 'Current Date & Time
6 Entry_SaveUpdate
7 End Sub
8
9 Sub Entry_ClockOut()
10 EmplBoard.Range("L10" ).Value = Now 'Current Date & Time
11 Entry_SaveUpdate
12 End Sub
13
14 Sub Entry_Delete()
15 If MsgBox("Are you sure you want to delete this Time Entry?" , vbYesNo, "Delete Entry" ) = vbNo
Then Exit Sub
16 With EmplBoard
17 If .Range("B3" ).Value = Empty Then GoTo NotSaved
18 EntryRow = .Range("B3" ).Value
19 EntryDB.Range(EntryRow & ":" & EntryRow).EntireRow.Delete
20 NotSaved:
21 RefreshBoard
22 Entry_New
23 End With
24 End Sub
25
26 Sub Entry_Load()
27 With EmplBoard
28 If .Range("B3" ).Value = Empty Then
29 MsgBox "Please select an correct entry to load"
30 Exit Sub
31 End If
32 EntryRow = .Range("B3" ).Value
33 For EntryCol = 2 To 7
34 .Range(EntryDB.Cells(1, EntryCol).Value).Value = EntryDB.Cells(EntryRow, EntryCol).Value

35 Next EntryCol
36 If .Range("L8" ).Value = Empty Then 'Not Clocked In
37 .Shapes("ClockInBtn" ).Visible = msoCTrue 'Show Clock In
38 .Shapes("ClockOutBtn" ).Visible = msoFalse 'Hide Clock Out
39 ElseIf .Range("L8" ).Value <> Empty And .Range("L10" ).Value = Empty Then
40 .Shapes("ClockInBtn" ).Visible = msoFalse 'Hide Clock In
41 .Shapes("ClockOutBtn" ).Visible = msoCTrue 'Show Clock Out
42 Else
43 .Shapes("ClockInBtn" ).Visible = msoFalse 'Hide Clock In
44 .Shapes("ClockOutBtn" ).Visible = msoFalse 'Hide Clock Out
45 End If
46 End With
47 End Sub
48
49 Sub Entry_New()
50 With EmplBoard
51 .Range("B2,L4:L10" ).ClearContents
52 .Range("L4" ).Value = Admin.Range("I7" ).Value 'Default Employee name
53 On Error Resume Next
54 DefLocRow = Admin.Range("D9:D18" ).Find(Chr(252), , xlValues, xlWhole).Row
55 On Error GoTo 0
56 If DefLocRow <> 0 Then .Range("L6" ).Value = Admin.Range("B" & DefLocRow).Value 'Default
Location
57 .Shapes("ClockInBtn" ).Visible = msoCTrue 'Show Clock In Button
58 .Shapes("ClockOutBtn" ).Visible = msoFalse 'Hide Cloc Out
59 End With
60 End Sub
61
62 Sub Entry_SaveUpdate()
63 With EmplBoard
64 If .Range("L4" ).Value = Empty Or .Range("L6" ).Value = Empty Or .Range("L8" ).Value = Empty
Then
1 2 3

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 13 of 23


Entry_Macros Employee_In_Out_Board
1 2 3
65 MsgBox "Please make sure to fill in Employee Name, Location and Clock In at least"

66 Exit Sub
67 End If
68 If .Range("B3" ).Value = Empty Then 'New Entry
69 EntryRow = EntryDB.Range("A9999" ).End(xlUp).Row + 1 'First Avail Row
70 .Range("B2" ).Value = .Range("B4" ).Value 'Entry ID
71 EntryDB.Range("A" & EntryRow).Value = .Range("B2" ).Value
72 Else 'Existing Entry
73 EntryRow = .Range("B3" ).Value 'Entry Row (existing)
74 End If
75 For EntryCol = 2 To 7
76 EntryDB.Cells(EntryRow, EntryCol).Value = .Range(EntryDB.Cells(1, EntryCol).Value).Value

77 Next EntryCol
78 If .Range("L8" ).Value = Empty Then 'Not Clocked In
79 .Shapes("ClockInBtn" ).Visible = msoCTrue 'Show Clock In
80 .Shapes("ClockOutBtn" ).Visible = msoFalse 'Hide Clock Out
81 ElseIf .Range("L8" ).Value <> Empty And .Range("L10" ).Value = Empty Then
82 .Shapes("ClockInBtn" ).Visible = msoFalse 'Hide Clock In
83 .Shapes("ClockOutBtn" ).Visible = msoCTrue 'Show Clock Out
84 Else
85 .Shapes("ClockInBtn" ).Visible = msoFalse 'Hide Clock In
86 .Shapes("ClockOutBtn" ).Visible = msoFalse 'Hide Clock Out
87 End If
88 RefreshBoard
89 MsgBox "Time Entry Saved"
90 End With
91 End Sub

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 14 of 23


PopUp_Calendar Employee_In_Out_Board

1 Dim SelCell As Range


2 Dim DayName As String
3
4 '''''''''''''''''Color Calendar Background''''''''''''''''''''''
5 Sub CalCol()
6 With ActiveSheet.Shapes.Range(Array("CalBack" , "Settings" )).Select
7 With Selection.ShapeRange.Fill
8 .ForeColor.RGB = ActiveSheet.Shapes(Application.Caller).Fill.ForeColor.RGB
9 End With
10 ActiveSheet.Range(Sheets("CalPopUp" ).Range("A7" ).Value).Select
11 End With
12 End Sub
13
14 Sub CalendarHide()
15 Dim DayNum As Long
16 'Hide Calendar, Reset Day Colors
17 On Error GoTo NoCal
18 ActiveSheet.Shapes("Calendar" ).Visible = msoFalse
19 Sheets("CalPopUp" ).Range("A7" ).Value = ""
20 If Sheets("CalPopUp" ).Range("A20" ).Value <> Empty Then
21 For DayNum = 1 To 42
22 DayName = DayNum & "Day"
23 With ActiveSheet.Shapes(DayName)
24 .Fill.ForeColor.RGB = RGB(255, 255, 255)
25 .TextFrame2.TextRange.Font.Bold = msoFalse
26 End With
27 Next DayNum
28 End If
29 Exit Sub
30 NoCal: 'If calendar has been removed by accident, paste in backup calendar from CalPopUp Sheet

31 End Sub
32
33 Sub CalendarShow()
34 With ActiveSheet
35 Set SelCell = ActiveCell
36 'Check if active cell is a valid date
37 If IsDate(SelCell.Value) = True Then
38 Sheets("CalPopUp" ).Range("A1" ).Value = SelCell.Value
39 Else: 'If No Date or incorrect Date user current date
40 Sheets("CalPopUp" ).Range("A1" ).Value = "=Today()"
41 End If
42 'Clear all shapes to white (if calendar is visible)
43 If ActiveSheet.Shapes("Calendar" ).Visible = True Then
44 For DayNum = 1 To 42
45 DayName = DayNum & "Day"
46 With ActiveSheet.Shapes(DayName)
47 .Fill.ForeColor.RGB = RGB(255, 255, 255)
48 .TextFrame2.TextRange.Font.Bold = msoFalse
49 End With
50 Next DayNum
51 End If
52
53 Sheets("CalPopUp" ).Range("A3" ).Value = Month(Sheets("CalPopUp" ).Range("A1" ).Value) 'Set
Month
54 Sheets("CalPopUp" ).Range("A2" ).Value = Year(Sheets("CalPopUp" ).Range("A1" ).Value) 'Set Year

55 DayName = Sheets("CalPopUp" ).Range("A20" ).Value & "Day"


56 ' UnGroupCal
57 If InStr(.Shapes("1Day" ).DrawingObject.Formula, "]" ) <> 0 Then 'Run Workbook Link Remover
and Cell Link Replacement
58 MacroLinkRemover
59 CalFormulaReplacement
60 End If
61 'GroupCal
62 On Error GoTo NoCal
63 If DayName = "Day" Then DayName = Day(Date) & "Day" 'Set Default Day
64 With ActiveSheet.Shapes(DayName)
65 .Fill.ForeColor.RGB = RGB(252, 213, 180)
1 2 3

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 15 of 23


PopUp_Calendar Employee_In_Out_Board
1 2 3
66 .TextFrame2.TextRange.Font.Bold = msoTrue
67 End With
68 On Error GoTo NoCal
69 .Shapes("Calendar" ).Visible = msoCTrue
70 .Shapes.Range(Array("Settings" , "CalCol1" , "CalCol2" , "CalCol3" , "CalCol4" , "CalCol5" ,
"CalCol6" , "CalCol7" , "CalCol8" , "CalCol9" )).Visible = False '
71 .Shapes("Calendar" ).Left = SelCell.Left
72 .Shapes("Calendar" ).Placement = xlMove
73 .Shapes("Calendar" ).ZOrder msoBringToFront
74 .Shapes("Calendar" ).Top = SelCell.Offset(1, 0).Top
75 If Sheets("CalPopUp" ).Range("A6" ).Value > 0 Then
76 .Shapes.Range(Array("36Day" , "37Day" , "38Day" , "39Day" , "40Day" , "41Day" , "42Day"
)).Visible = True
77 Else:
78 .Shapes.Range(Array("36Day" , "37Day" , "38Day" , "39Day" , "40Day" , "41Day" , "42Day"
)).Visible = False
79 End If
80 Sheets("CalPopUp" ).Range("A7" ).Value = SelCell.Address
81 ActiveCell.Select
82 End With
83 Exit Sub
84 NoCal:
85 MsgBox "The Pop-up Calendar does not exist on this worksheet. Please copy the calendar over from
another sheet and paste into this sheet"
86 End Sub
87
88 Sub CalFormulaReplacement()
89 With ActiveSheet
90 Dim DayNum, ColNum, RowNum As Long
91 Dim Shp As Shape
92 ColNum = 2
93 RowNum = 1
94 For DayNum = 1 To 42
95 .Shapes(DayNum & "Day" ).DrawingObject.Formula = "=CalPopUp!" & .Cells(RowNum,
ColNum).Address
96 ColNum = ColNum + 1
97 If ColNum = 9 Then
98 ColNum = 2
99 RowNum = RowNum + 1
100 End If
101 Next DayNum
102 .Shapes("Month" ).DrawingObject.Formula = "=CalPopUp!$A$4"
103 .Shapes("Year" ).DrawingObject.Formula = "=CalPopUp!$A$2"
104 End With
105 End Sub
106
107 Sub CheckForSheet()
108 'Checks for existance of Calendar Pop-up Worksheet
109 Dim ws As Worksheet
110 On Error GoTo CreateWS
111 Set ws = ActiveWorkbook.Sheets("CalPopUp" )
112 Exit Sub
113 CreateWS:
114 CreateCalSht
115 End Sub
116
117 'Create Calendar Sheet on First Run of Calendar
118 Sub CreateCalSht()
119 Dim ColCnt, RowCnt, DayCnt, CalCol As Long
120 Dim ws, ActSht As Worksheet
121 Set ActSht = ActiveSheet
122 'On Error GoTo NoCal
123 ActiveSheet.Shapes("Calendar" ).Copy
124 Set ws = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))

125 ws.Name = "CalPopUp"


126 ActSht.Activate
127
128 'Reassign Shape Links & Macros
1

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 16 of 23


PopUp_Calendar Employee_In_Out_Board
1
129 With ActiveSheet
130 UnGroupCal
131 '.Unprotect
132 .Shapes("PrevYr" ).OnAction = "'" & ActiveWorkbook.Name & "'!PrevYear"
133 .Shapes("NextYr" ).OnAction = "'" & ActiveWorkbook.Name & "'!NextYear"
134 .Shapes("NextRec" ).OnAction = "'" & ActiveWorkbook.Name & "'!NextMonth"
135 .Shapes("NextTri" ).OnAction = "'" & ActiveWorkbook.Name & "'!NextMonth"
136 .Shapes("PrevRec" ).OnAction = "'" & ActiveWorkbook.Name & "'!PrevMonth"
137 .Shapes("PrevTri" ).OnAction = "'" & ActiveWorkbook.Name & "'!PrevMonth"
138 .Shapes("SetBtn" ).OnAction = "'" & ActiveWorkbook.Name & "'!ShowSettings"
139 .Shapes("Month" ).DrawingObject.Formula = "=CalPopUp!A4"
140 .Shapes("Year" ).DrawingObject.Formula = "=CalPopUp!A2"
141 DayCnt = 1
142 For RowCnt = 1 To 6
143 For ColCnt = 2 To 8
144 .Shapes(DayCnt & "Day" ).DrawingObject.Formula = "=CalPopUp!" & .Cells(RowCnt,
ColCnt).Address 'Assigned Linked Cell
145 .Shapes(DayCnt & "Day" ).OnAction = "'" & ActiveWorkbook.Name & "'!SelectDay" 'Assign
Macro
146 DayCnt = DayCnt + 1
147 Next ColCnt
148 Next RowCnt
149
150 'Assign Color Macros
151 For CalCol = 1 To 9
152 .Shapes("CalCol" & CalCol).OnAction = "'" & ActiveWorkbook.Name & "'!CalCol" 'Assign Color
Macro
153 Next CalCol
154 End With
155
156 With Sheets("CalPopUp" )
157 .Paste
158 .Visible = xlSheetHidden
159
160 'Add in Formulas and Details
161 .Range("A1" ).Value = Date 'Set Current Date
162 .Range("A2" ).Value = Year(Date) 'Set Current Year
163 .Range("A3" ).Value = Month(Date) 'Set Current Month #
164 .Range("A4" ).Value = "=INDEX(CalMonths,A3,)"
165 .Range("A5" ).Value = "=A4&" & Chr(34) & " " & Chr(34) & "&CalYear"
166 .Range("A6" ).Value = "=SUM(B6:H6)"
167 .Range("A8" ).Value = "January"
168 .Range("A8" ).AutoFill Destination:=.Range("A8:A19" ), Type:=xlFillDefault
169 .Range("A20" ).Value = "=IFERROR(INDIRECT(ADDRESS(SUMPRODUCT((B1:H6=A1)*ROW(B1:H6))+6,SUMPRODUCT
((B1:H6=A1)*COLUMN(B1:H6)),1,1))," & Chr(34) & Chr(34) & ")"
170 'Set Defined Names
171 ActiveWorkbook.Names.Add Name:="CalMonths" , RefersTo:="=CalPopUp!$A$8:$A$19"
172 ActiveWorkbook.Names.Add Name:="CalYear" , RefersTo:="=CalPopUp!$A$2"
173
174 'Add in Calendar Formulas
175
176 .Range("B1" ).Value = "=IF(WEEKDAY(DATE(CalYear,MATCH($A$4,CalMonths,0),1))=1,DATE(CalYear,MATCH
($A$4,CalMonths,0),1)," & Chr(34) & Chr(34) & ")"
177 .Range("C1" ).Value = "=IF(B1<>" & Chr(34) & Chr(34) & ",B1+1,IF(WEEKDAY(DATE(CalYear,MATCH
($A$4,CalMonths,0),1))=2,DATE(CalYear,MATCH($A$4,CalMonths,0),1)," & Chr(34) & Chr(34) & "))"

178 .Range("D1" ).Value = "=IF(C1<>" & Chr(34) & Chr(34) & ",C1+1,IF(WEEKDAY(DATE(CalYear,MATCH
($A$4,CalMonths,0),1))=3,DATE(CalYear,MATCH($A$4,CalMonths,0),1)," & Chr(34) & Chr(34) & "))"

179 .Range("E1" ).Value = "=IF(D1<>" & Chr(34) & Chr(34) & ",D1+1,IF(WEEKDAY(DATE(CalYear,MATCH
($A$4,CalMonths,0),1))=4,DATE(CalYear,MATCH($A$4,CalMonths,0),1)," & Chr(34) & Chr(34) & "))"

180 .Range("F1" ).Value = "=IF(E1<>" & Chr(34) & Chr(34) & ",E1+1,IF(WEEKDAY(DATE(CalYear,MATCH
($A$4,CalMonths,0),1))=5,DATE(CalYear,MATCH($A$4,CalMonths,0),1)," & Chr(34) & Chr(34) & "))"

181 .Range("G1" ).Value = "=IF(F1<>" & Chr(34) & Chr(34) & ",F1+1,IF(WEEKDAY(DATE(CalYear,MATCH
($A$4,CalMonths,0),1))=6,DATE(CalYear,MATCH($A$4,CalMonths,0),1)," & Chr(34) & Chr(34) & "))"

1 2

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 17 of 23


PopUp_Calendar Employee_In_Out_Board
1 2
182 .Range("H1" ).Value = "=IF(G1<>" & Chr(34) & Chr(34) & ",G1+1,IF(WEEKDAY(DATE(CalYear,MATCH
($A$4,CalMonths,0),1))=7,DATE(CalYear,MATCH($A$4,CalMonths,0),1)," & Chr(34) & Chr(34) & "))"

183 .Range("B2" ).Value = "=H1+1"


184 .Range("C2" ).Value = "=B2+1"
185 .Range("C2" ).AutoFill Destination:=.Range("C2:H2" ), Type:=xlFillDefault
186 .Range("B2:H2" ).AutoFill Destination:=.Range("B2:H4" ), Type:=xlFillDefault
187 .Range("B5" ).Value = "=IF(OR(H4=" & Chr(34) & Chr(34) & ",MONTH(H4+1)<>$A$3)," & Chr(34) &
Chr(34) & ",H4+1)"
188 .Range("C5" ).Value = "=IFERROR(IF(MONTH(B5+1)<>$A$3," & Chr(34) & Chr(34) & ",B5+1)," & Chr
(34) & Chr(34) & ")"
189 .Range("B6" ).Value = "=IFERROR(IF(OR(H5=" & Chr(34) & Chr(34) & ",MONTH(H5+1)<>$A$3)," & Chr
(34) & Chr(34) & ",H5+1)," & Chr(34) & Chr(34) & ")"
190 .Range("C6" ).Value = "=IFERROR(F(MONTH(I5+1)<>$A$3," & Chr(34) & Chr(34) & ",I5+1)," & Chr
(34) & Chr(34) & ")"
191 .Range("C5:C6" ).AutoFill Destination:=.Range("C5:H6" ), Type:=xlFillDefault
192
193 'Set format to Single Day
194 .Range("B1:H6" ).NumberFormat = "d"
195
196 'Add in relative Day #'s
197 .Range("B7" ).Value = "1"
198 .Range("C7" ).Value = "2"
199 .Range("B8" ).Value = "8"
200 .Range("C8" ).Value = "9"
201 .Range("B7:C8" ).AutoFill Destination:=.Range("B7:H8" ), Type:=xlFillDefault
202 .Range("B7:H8" ).AutoFill Destination:=.Range("B7:H12" ), Type:=xlFillDefault
203 GroupCal
204 End With
205 Exit Sub
206 NoCal:
207 MsgBox "The Pop-up Calendar does not exist on this worksheet. Please copy the calendar over from
another sheet and paste into this sheet"
208 End Sub
209
210 Sub GroupCal()
211 ActiveSheet.Shapes.Range(Array("NextTri" , "NextRec" )).Group.Select
212 Selection.ShapeRange.Name = "NextMonth"
213 ActiveSheet.Shapes.Range(Array("PrevTri" , "PrevRec" )).Group.Select
214 Selection.ShapeRange.Name = "PrevMonth"
215 ActiveSheet.Shapes.Range(Array("Settings" , "40Day" , "41Day" , "39Day" , "38Day" _
216 , "42Day" , "37Day" , "36Day" , "CalBack" , "Month" , "Year" , "CalBorder" , "1Day" , _

217 "3Day" , "14Day" , "7Day" , "4Day" , "2Day" , "5Day" , "8Day" , "10Day" , "6Day" , _

218 "13Day" , "11Day" , "9Day" , "12Day" , "15Day" , "17Day" , "20Day" , "21Day" , "18Day" _

219 , "16Day" , "19Day" , "22Day" , "24Day" , "26Day" , "27Day" , "25Day" , "23Day" , _

220 "28Day" , "29Day" , "31Day" , "34Day" , "35Day" , "32Day" , "30Day" , "33Day" , "Sa" , _

221 "Fr" , "Th" , "We" , "Tu" , "Mo" , "Su" , "SetBtn" , "CalCol1" , "CalCol2" , "CalCol3" , _

222 "CalCol4" , "CalCol5" , "CalCol6" , "CalCol7" , "CalCol8" , "CalCol9" , "PrevMonth" , _

223 "NextMonth" , "NextYr" , "PrevYr" )).Visible = msoCTrue


224 ActiveSheet.Shapes.Range(Array("Settings" , "40Day" , "41Day" , "39Day" , "38Day" _
225 , "42Day" , "37Day" , "36Day" , "CalBack" , "Month" , "Year" , "CalBorder" , "1Day" , _

226 "3Day" , "14Day" , "7Day" , "4Day" , "2Day" , "5Day" , "8Day" , "10Day" , "6Day" , _
227 "13Day" , "11Day" , "9Day" , "12Day" , "15Day" , "17Day" , "20Day" , "21Day" , "18Day" _

228 , "16Day" , "19Day" , "22Day" , "24Day" , "26Day" , "27Day" , "25Day" , "23Day" , _


229 "28Day" , "29Day" , "31Day" , "34Day" , "35Day" , "32Day" , "30Day" , "33Day" , "Sa" , _

230 "Fr" , "Th" , "We" , "Tu" , "Mo" , "Su" , "SetBtn" , "CalCol1" , "CalCol2" , "CalCol3" , _

231 "CalCol4" , "CalCol5" , "CalCol6" , "CalCol7" , "CalCol8" , "CalCol9" , "PrevMonth" , _

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 18 of 23


PopUp_Calendar Employee_In_Out_Board
1
232 "NextMonth" , "NextYr" , "PrevYr" )).Select
233 Selection.ShapeRange.Group.Select
234 Selection.ShapeRange.Name = "Calendar"
235 Selection.Name = "Calendar"
236 Selection.Placement = xlMove
237 ActiveSheet.Shapes("Calendar" ).Placement = 2
238 End Sub
239
240 Sub MacroLinkRemover()
241 'PURPOSE: Remove an external workbook reference from all shapes triggering macros
242 'Source: www.ExcelForFreelancers.com
243 Dim Shp As Shape
244 Dim MacroLink, NewLink As String
245 Dim SplitLink As Variant
246
247 For Each Shp In ActiveSheet.Shapes 'Loop through each shape in worksheet
248
249 'Grab current macro link (if available)
250 On Error GoTo NextShp
251 MacroLink = Shp.OnAction
252
253 'Determine if shape was linking to a macro
254 If MacroLink <> "" And InStr(MacroLink, "!" ) <> 0 Then
255 'Split Macro Link at the exclaimation mark (store in Array)
256 SplitLink = Split(MacroLink, "!" )
257
258 'Pull text occurring after exclaimation mark
259 NewLink = SplitLink(1)
260
261 'Remove any straggling apostrophes from workbook name
262 If Right(NewLink, 1) = "'" Then
263 NewLink = Left(NewLink, Len(NewLink) - 1)
264 End If
265
266 'Apply New Link
267 Shp.OnAction = NewLink
268 End If
269 NextShp:
270 Next Shp
271 End Sub
272
273 Sub NextMonth()
274 'Next Month button
275 If Sheets("CalPopUp" ).Range("A20" ).Value <> Empty Then
276 DayName = Sheets("CalPopUp" ).Range("A20" ).Value & "Day"
277 With ActiveSheet.Shapes(DayName)
278 .Fill.ForeColor.RGB = RGB(255, 255, 255)
279 .TextFrame2.TextRange.Font.Bold = msoFalse
280 End With
281 End If
282 With Sheets("CalPopUp" )
283 If .Range("A3" ).Value = 12 Then
284 .Range("A3" ).Value = 1
285 .Range("A2" ).Value = .Range("A2" ).Value + 1
286 Else:
287 .Range("A3" ).Value = .Range("A3" ).Value + 1
288 End If
289 If .Range("A6" ).Value > 0 Then
290 ActiveSheet.Shapes.Range(Array("36Day" , "37Day" , "38Day" , "39Day" , "40Day" , "41Day" ,
"42Day" )).Visible = True
291 Else:
292 ActiveSheet.Shapes.Range(Array("36Day" , "37Day" , "38Day" , "39Day" , "40Day" , "41Day" ,
"42Day" )).Visible = False
293 End If
294 End With
295 End Sub
296
297 Sub NextYear()
1

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 19 of 23


PopUp_Calendar Employee_In_Out_Board
1
298 ThisWorkbook.Sheets("CalPopUp" ).Range("A2" ).Value = ThisWorkbook.Sheets("CalPopUp" ).Range("A2"
).Value + 1
299 End Sub
300
301 Sub PrevMonth()
302 'Previous Month Button
303 If Sheets("CalPopUp" ).Range("A20" ).Value <> Empty Then
304 DayName = Sheets("CalPopUp" ).Range("A20" ).Value & "Day"
305 With ActiveSheet.Shapes(DayName)
306 .Fill.ForeColor.RGB = RGB(255, 255, 255)
307 .TextFrame2.TextRange.Font.Bold = msoFalse
308 End With
309 End If
310 With Sheets("CalPopUp" )
311 If .Range("A3" ).Value = 1 Then
312 .Range("A3" ).Value = 12
313 .Range("A2" ).Value = .Range("A2" ).Value - 1
314 Else:
315 .Range("A3" ).Value = .Range("A3" ).Value - 1
316 End If
317 If .Range("A6" ).Value > 0 Then
318 ActiveSheet.Shapes.Range(Array("36Day" , "37Day" , "38Day" , "39Day" , "40Day" , "41Day" ,
"42Day" )).Visible = True
319 Else:
320 ActiveSheet.Shapes.Range(Array("36Day" , "37Day" , "38Day" , "39Day" , "40Day" , "41Day" ,
"42Day" )).Visible = False
321 End If
322 End With
323 End Sub
324
325 Sub PrevYear()
326 ThisWorkbook.Sheets("CalPopUp" ).Range("A2" ).Value = ThisWorkbook.Sheets("CalPopUp" ).Range("A2"
).Value - 1
327 End Sub
328 Sub ReplaceCalendar() 'Shape Deleted
329 ThisWorkbook.Sheets("CalPopUp" ).Shapes("Calendar" ).Copy 'Copy From Developers sheet

330 ActiveCell.Select 'Select the active Cell


331 ActiveSheet.Paste 'Paste in Calendar
332 End Sub
333
334 ''''''''''''''''''''''''''''''''''''''
335 '''''Select Day Of The Month
336 ''''''''''''''''''''''''''''''''''''''
337 Sub SelectDay()
338 Dim DayNumb As Long, RowNumb As Long, ColNumb As Long
339 DayNumb = Replace(Application.Caller, "Day" , "" )
340 RowNumb = Application.WorksheetFunction.RoundUp(DayNumb / 7, 0)
341 ColNumb = DayNumb Mod 7 + 1
342 If ColNumb = 1 Then ColNumb = 8
343 'On Error Resume Next
344 If ThisWorkbook.Sheets("CalPopUp" ).Range("A7" ).Value = Empty Then Exit Sub
345 ActiveSheet.Range(ThisWorkbook.Sheets("CalPopUp" ).Range("A7" ).Value).Value = ThisWorkbook.Sheets
("CalPopUp" ).Cells(RowNumb, ColNumb).Value
346 ActiveSheet.Shapes("Calendar" ).Visible = msoFalse
347 ActiveCell.Offset(0, 1).Select
348 End Sub
349
350 Sub ShowSettings()
351 'Show or Hide Calendar Settings Panel
352 If ActiveSheet.Shapes.Range(Array("Settings" )).Visible = True Then
353 ActiveSheet.Shapes.Range(Array("Settings" , "CalCol1" , "CalCol2" , "CalCol3" , "CalCol4" ,
"CalCol5" , "CalCol6" , "CalCol7" , "CalCol8" , "CalCol9" )).Visible = False

354 Else:
355 ActiveSheet.Shapes.Range(Array("Settings" , "CalCol1" , "CalCol2" , "CalCol3" , "CalCol4" ,
"CalCol5" , "CalCol6" , "CalCol7" , "CalCol8" , "CalCol9" )).Visible = True

356 End If
1

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 20 of 23


PopUp_Calendar Employee_In_Out_Board
1
357 End Sub
358
359 Sub UnGroupCal()
360 On Error Resume Next
361 ActiveSheet.Shapes("Calendar" ).Ungroup
362 ActiveSheet.Shapes("NextMonth" ).Ungroup
363 ActiveSheet.Shapes("PrevMonth" ).Ungroup
364 On Error GoTo 0
365 End Sub

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 21 of 23


Index

EmplID, 11, 12 NoSelection, 10


_ EmplName, 11, 12 NotSaved, 13
_, 18 EmployeeDB, 12 NotSelected, 10
EmplRow, 11, 12 Now, 13
A EmplType, 11 NumberFormat, 18
Activate, 16 Empty, 4, 5, 12-15, 19, 20
ActiveCell, 10, 15, 16, 20 EntireRow, 13 O
ActiveSheet, 15-21 Entry_ClockIn, 13 Offset, 16, 20
ActiveWorkbook, 16, 17 Entry_ClockOut, 13 OnAction, 12, 17, 19
ActSht, 16 Entry_Delete, 13 Order, 11
Add, 11, 16, 17 Entry_Load, 12, 13
Address, 16, 17 Entry_New, 13 P
Admin, 10-13 Entry_SaveUpdate, 13 Paste, 17, 20
Admin_SetLocationColor, 10 EntryCol, 13, 14 PicFolder, 10
AdvancedFilter, 11 EntryDB, 11, 13, 14 PicName, 11, 12
After, 16 EntryID, 11, 12 PicPath, 10-12
AllowMultiSelect, 10 EntryRow, 13, 14 Placement, 16, 19
Application, 10-12, 15, 20 Explicit, 4-11, 13 PrevMonth, 20
Apply, 11 PrevYear, 20
AppSharedFolder, 12 F
Array, 15, 16, 18-20 FileDialog, 10 R
AutoFill, 17, 18 Fill, 10, 12, 15, 19, 20 Range, 4, 5, 10-20
Find, 11-13 RefersTo, 17
B Font, 15, 16, 19, 20 RefreshBoard, 5, 11, 13, 14
Board_NextDay, 11 ForeColor, 10, 12, 15, 19, 20 Replace, 12, 20
Board_PrevDay, 11 Format, 11 ReplaceCalendar, 20
Board_Today, 11 Formula, 15-17 ResultRow, 11, 12
BoardRow, 11, 12 RGB, 10, 12, 15, 19, 20
BoardShp, 11 G Right, 19
Bold, 15, 16, 19, 20 Group, 18, 19 RoundUp, 20
BrowseForEmployeePicFolder, 10 GroupCal, 18 Row, 4, 5, 11-14
BrowseForMainSharedFolder, 10 RowCnt, 16, 17
H RowNum, 16
C Height, 12 RowNumb, 20
CalCol, 15-17
CalendarHide, 5, 15 I S
CalendarShow, 5, 15 IconName, 10 ScreenUpdating, 11, 12
CalFormulaReplacement, 15, 16 InStr, 11, 15, 19 SelCell, 15, 16
Caller, 10, 12, 15, 20 Interior, 10, 12 SelectDay, 20
Cells, 13, 14, 16, 17, 20 Intersect, 4, 5 SelectedItems, 10
CheckForSheet, 16 IsDate, 15 SelectEntry, 12
Chr, 4, 5, 11-13, 17, 18 Selection, 15, 18, 19
Clear, 11 K SelRow, 10
ClearContents, 4, 13 Key, 11 SetRange, 11
ClockIn, 11, 12 Shape, 11, 16, 19
ClockOut, 11, 12 L ShapeRange, 15, 18, 19
ColCnt, 16, 17 LastResultRow, 11 Shapes, 4, 5, 10-21
ColNum, 16 LastRow, 11 SharedFolder, 10
ColNumb, 20 Left, 4, 12, 16, 19 Sheets, 15-17, 19, 20
Color, 10, 12 Len, 19 Show, 10
Copy, 16, 20 Location, 11, 12 ShowSettings, 20
CopyToRange, 11 LocColor, 11, 12 Shp, 16, 19
Count, 16 LocRow, 11, 12 SkipCheck, 11, 12
CountLarge, 4, 5 SkipPic, 12
CreateCalSht, 16 M SkipSort, 11
CreateWS, 16 MacroLink, 19 Sort, 11
CriteriaRange, 11 MacroLinkRemover, 15, 19 SortFields, 11
Month, 15, 17 SortOn, 11
D MsgBox, 13, 14, 16, 18 Split, 19
DataOption, 11 msoBringToFront, 16 SplitLink, 19
Day, 15 msoCTrue, 4, 13, 14, 16, 18
DayCnt, 16, 17 msoFalse, 4, 10, 13-15, 19, 20 T
DayName, 15, 19, 20 msoFileDialogFolderPicker, 10 Target, 4, 5
DayNum, 15, 16 msoTrue, 16 Text, 12
DayNumb, 20 TextFrame2, 12, 15, 16, 19, 20
DefLocRow, 13 N TextRange, 12, 15, 16, 19, 20
Delete, 11, 13 Name, 11, 12, 16-19 ThisWorkbook, 16, 20
Destination, 17, 18 Names, 17 Title, 10
Dir, 12 NewLink, 19 Top, 4, 12, 16
DrawingObject, 15-17 NextEntry, 11, 12 TypeRow, 11, 12
Duplicate, 12 NextMonth, 19
NextShp, 19 U
E NextYear, 19 Ungroup, 21
EmplBoard, 11-13 NoCal, 15, 16, 18 UnGroupCal, 17, 21

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 22 of 23


Index

Unique, 11
UserPicture, 12

V
Value, 4, 5, 10-20
vbDirectory, 12
vbNo, 13
vbYesNo, 13
Visible, 4, 5, 10, 13-20

W
Width, 12
Worksheet, 16
Worksheet_Change, 5
Worksheet_SelectionChange, 4, 5
WorksheetFunction, 20
ws, 16

X
xlAscending, 11
xlFillDefault, 17, 18
xlFilterCopy, 11
xlMove, 16, 19
xlSheetHidden, 17
xlSortNormal, 11
xlSortOnValues, 11
xlUp, 11, 14
xlValues, 11-13
xlWhole, 11-13

Y
Year, 15, 17

Z
ZOrder, 16

Employee_In_Out_Board.xlsm By Rob's Excel Support - Since 2020 23 of 23

You might also like