During exam season, immense amounts of time are dedicated to sending out Outlook Calendar appointment invitations. Each participant of the meeting has to be looked up and their E-mail address added individually. Furthermore, while templates are available for the various invites, much of the content has to be customized, including the meeting dates / time, the meeting room (location), the list of instructors & support staff, list of support rooms (for larger exams) etc.
While innate variations between exams exist, and some customizations are probably always present, much of the content could still be automated to minimize the amount of time spent searching, scrolling and pasting information. The Macro-Containing Spreadsheet in this repo includes VBA code that automates much of these procedures.
- Check: https://ubc.instructure.com/courses/6040/pages/how-to-use-the-send-calendar-invite-spreadsheet for user's manual complete with images.
- Ensure Outlook is open
- Download the Excel File in this repo "send_exam_invites.xlsm" (or fetch/pull repo through GitHub)
- Open "send_exam_invites.xlsm"
- If you see a warning ribbon on top, click "Enable Macro" or "Enable Content"
- Open your browser, go to the google spreadsheet for Sauder Exams
- Ask LS Ops for link/access if you don't have it
- Go to the worksheet for the relevant term in the google sheet
- Copy content in the google sheet worksheet
- Paste content from google sheet into "Exam Sheet" in "send_exam_invites.xlsm"
- Ensure header is in first row of spreadsheet
- Go to the "Mail List" worksheet in the google sheet
- Copy content in the worksheet
- Paste content from "Mail List" from google sheet into "Mail List" in "send_exam_invites.xlsm"
- Check that formatting in "send_exam_invites.xlsm" is up to standards
- Once ready, select the courses in the first column that needs invite drafted
- Click on "RECOMMENDED: Draft Selected" in top left
- Alternatively: click "Draft / Send with Custom Settings" to customize settings
- Calendar invites will be made
- Once done, check the "CALENDAR INVITE" column to see if any courses "FAILED"
- Check the "PEOPLE INVITED" column to see who was found for the invite
- Update the "CALENDAR INVITE" column on google sheet (can copy and paste)
- BEFORE EXAM: make necessary tweaks and double check info are correct
These steps are only for importing the code into a blank sheet. If you are unsure what this means then only refer to "How to Use" to run the spreadsheet.
- Pull this repo
- Open a blank Excel File
- Save as a Macro-Enabled Spreadsheet
- Go to "File"
- => "Save As"
- => choose "Excel Macro-Enabled Workbook (*.xlsm)"
- Enable Developer Ribbon
- Go to "File"
- => "Options"
- => "Customize Ribbon"
- => in menu, find and tick checkmark for "Developer"
- => "Ok"
- Enable References for Excel VBAProject
- Go to "Developer"
- => Visual Basic
- => "Tools"
- => "References"
- => ensure the following are checked:
- "Visual Basic For Applications"
- "Microsoft Excel 16.0 Object Library"
- "Microsoft Office 16.0 Object Library"
- "Microsoft Outlook 16.0 Object Library"
- "Microsoft Scripting Runtime"
- "OLE Automation"
- "Miscrosoft VBScript Regular Expression 5.5"
- Import .bas and .cls files into Project
- In VBA window, go to "File"
- => "Import File"
- => Choose the files from the "src" directory pulled out of this repo
- => Files have to be imported one by one
- Done