Вы находитесь на странице: 1из 6

4/3/2015

Introduction

Unleash The Power of Excel


Using Macros
April 22, 2015

Excel has so many features and it is unlikely that anybody has mastered the
majority of these features or even knows what they are.
Excel also provides alternative ways of accomplishing a task and multiple
ways to invoke a function.
Macros extend this capability by allowing a user to predefine a series of
functions in order to complete a task.
The goal of this session is not to learn how to construct a macro. Instead,
this session will demonstrate some of the macros Ive developed over several
years to get an appreciation for what macros will do.
If there is interest in learning how to construct macros, Im happy to share.
Frankly, it takes a little instruction and a lot of practice and investigation to
be good at writing macros.

Why Invest Time to Learn Macros

Skill Levels

Once defined, a lengthy or complex task can be run in seconds.

Beginning record a macro, loop through each row of a worksheet, simple


if-then statements, assign macro to a button.
Intermediate retrieve data from a database, loop through rows of
multiple worksheets, sort the data
Advanced retrieve data from multiple databases, integrate the data,
translate the data, create an outline
It takes a lot of practice to advance from one skill level to another.
There are a lot of experts that post macros to the internet that you can
copy and modify.
For most of the Excel functions, you can record a macro and it will store the
code. You can embed that code within your macro. Examples of this might
include coloring a cell, underline, bold, formulas, sorting, outlining,
filtering, etc.

You can pass certain tasks to another staff member who has few Excel skills but is
responsible for monitoring the data.
You can run it yourself without having to remember all of the steps of the process.
Once you verify it works, you can have confidence that it completed all of the steps.

You can pull data from multiple databases (e.g. general ledger, student,
payroll, Kronos, etc) to assemble a report or series of reports.
Quickly process a large number of transactions.
You can use other data, not currently stored in a database, to supplement
the report or translate data (e.g. if a is true and b is false, translate or group
an item differently).

4/3/2015

Show the Developer Ribbon


If you want the Developer option in the ribbon

Beginners Level Example


Objective Color groups of rows
Record macro to get code for coloring a cell
Create macro and insert recorded macro code where needed

You need to follow these steps.

Loop through the various rows with For/Next


For alternating groups, color the rows

Demonstrate:

Other examples Financial Reporting


Supplies and Services Budgets

Retrieve requested budget information for ensuing year


Match each budget with rationales provided by users via spreadsheet
Sort the budgets by cabinet level, department, key description and object
Use Excels outline feature to summarize the information
Allow drill-downs to retrieve expenditure detail for prior years.
Demonstrate:

Show the parameters to be used in the report


Show the rationales
Video excerpt of macro running
Review final report
How the outline was configured
Rationale
How to execute macro with keystroke combinations (Cntrl q)

Record a macro to paint some cells


Show how to integrate the recorded macro into a looping structure
How to run macro from within the macro window
How to step through the macro one instruction at a time.
How to create a button to run the macro

Other examples Financial Reporting


Revenues, Expenditures, Transfers and Fund Balances

Allow user to indicate what data will be retrieved for each column
Retrieve the information from the Bplus database
Merge data with projections stored in separate sheets of workbook
Get separate totals for cash and accrual entries
Populate totals in pre-defined report structure
Demonstrate:

How the report was pre-defined


The cash vs. accrual flag
The outline showing major headings that can open to object totals
How each cell has cash and accrual totals that change with the flag

Video showing drill down of expenditure detail for prior year

4/3/2015

Other examples Integrity Checks


Payroll Verification
User selects the payroll to verify
Payroll records are retrieved
Using data in the Taxability and TaxTables sheets, the macro recomputes gross
and net pay, FICA, Medicare, state and federal taxes and retirement.
Drill down allows differences to be investigated.
Demonstrate:
Totals from payroll vs. recomputed amounts
Drill down to method of calculation (net pay, federal tax, etc.)

Other examples
Requisitions to approve
Each board authorization for purchases is recorded. Additionally, each requisition, or
group of requisitions, related to each purchase is recorded. The macro does the
following:
Retrieves all requisitions in my queue for approval
Determines if the requisition is related to an approval already approved by the board.
If approved and the authorization has not been exceeded, it appears in green on the report.
If in the list for approval but the board date has not yet occurred, it appears in red on the report.
If not in the list, it is shown in a separate category on the report for my assistant to follow-up with
the requester.

Demonstrate:

List of Board Items (BoardAuth)


List of requisitions including cross-reference with board items. Highlight column G.
Explain Extract sheet.
Macro buttons on ControlPanel
Report showing which requisitions to approve. Notice prior requisitions are also considered
when determining remaining authority.

Other examples Integrity Checks


Leave Balances
Paste a download from Subfinder to the workbook for the current year
Have the macro format the report to complement the data to be retrieved
from Bplus
Have the macro compare the leave for each person, for each day, for each
leave type.
Report the results
Demonstrate:
Three separate macro buttons
Comparison report
Filter by color

Other examples
Local Property Tax Distributions

The monthly transmittal information from our property tax payments is recorded in
the spreadsheet.
For St. Louis County, settlements for prior year protests are withheld from current
year distributions
The TaxRateHistory tab shows the fund breakdowns for tax rates over the years and
will be used to allocate the tax revenue by fund.
The Key/Object sheet has the appropriate account number information to code the
revenue.
We added additional accounts to separately track:
Delinquent amounts by year.
Prior year settlements by year

When the macro runs, it creates the appropriate journal entry that we upload into
our finance system.
Demonstrate:

County information, tax rate history and key/object


Journal entry (ItemsToPost)
Macro buttons on ControlPanel
Run the macro

4/3/2015

Other examples
Tax Recoupment
As the State Tax Commission reduces valuations for prior years, re-compute
the tax rate ceiling for each year and determine the one-year recoupment
amount.
Demonstrate

Show information from Annual Value rows and columns


Show sample of calculation sheet (2014)
Go to Print, run macro to create pdf files. Look at files created.
Describe process to
Add columns on Annual Value for new revisions
Add new calculation sheet, change the data page references and CPI
Audit certain fields to make sure nothing was changed inadvertently

Other examples
Index of information
In preparation for my current assignment, I reviewed a lot of information and looked
for a way to organize the data. I couldve used Evernote, but was more familiar with
Excel and created a macro.
As I identified key requirements or deadlines, I copied them to a cell in a spreadsheet
and placed tags (index items) that would later allow me to quickly retrieve the item.
For deadlines, I also added a tag related to the month due.
When the macro is run, a list of tags is created, sorted and displayed in a dialog box
for me to choose.
When I choose an item, I get a list of items where that tag was used. See top right of
dialog box.
When I choose one of those items, I get the full text of the item in the larger box on
the bottom right.
Demonstrate:
Review Deadlines and Requirements
Run the macro and show the full text.

Other examples
Mileage Chart
Each of the district buildings is listed along the top of a sheet and also to the
far left.
The physical address is recorded next to each (below the column heading and
to the right of the row heading)
The macro goes through each combination of buildings and makes a call to a
Google Maps API which returns the distance between the two physical
locations. It is surprising how you can google Excel macro followed by
something like google maps distance to find a solution that you might not
think Excel can solve.
Demonstrate:

Other examples
Facilities Projects
The District annually updates a list of facilities needs
A macro creates individual spreadsheets for each school/department with
projects unique to them
The principal or department manager can add new items to the list and
indicate the top 5 priority items.
When the individual spreadsheets are returned, they are place in a separate
folder. Another macro updates the master spreadsheet.
Demonstrate:
Run some extracts and look at the files

Show where the physical address is stored


Show the video of the macro running.

4/3/2015

Other examples
File Directory
The macro will search a specified drive for user-defined types of files (e.g.
Word documents, Excel, pictures, videos, etc.)
Lists all folders at or below the specified drive location
Lists all files with file attributes

The macro can use this to identify identical files in multiple locations on the
network so they can be consolidated (same name, date modified and size)
The macro can copy a file to another location.
The macro can delete a file or group of files.
The macro can create or delete folders.
Demonstrate:
Run macro to identify folders and files

Other examples
Paycheck Calculator
Enter your payroll information and let the macro compute your net pay.
Demonstrate
Tax rate tables and other factors
Change some of the factors
Run macro to compute net pay

Other examples
Personal Leave Calendar
Creates a calendar of all days for any given year.
As leave is taken, I place the cursor over the absence date and invoke the
macro. It asks what type of leave and then colors it appropriately. I also need
to record the number of hours.
When done, I can select the AddTimeUsed button which will invoke a macro
to total the absences and restate my balances.
In cell A68, I can change the view from Days to Hours
Demonstrate:

Create a new calendar


Record absence
Total all absences to update the report
Change from Days to Hours

How to get started?


Consider taking a VBA class Visual Basic for Applications
If youre going to access a district database:
If you have an IT department, ask if you can have read permission to the
tables and request a DSN allowing you to reference the DSN name and the
macro will know where (what server) to get the data.
If not or the software is hosted on the cloud, run a report from the software,
paste it into the sheet and run your macro from that.

Start slow and use code generated by macro recorder


If you get stuck, search the web Excel macro
Call a friend.

4/3/2015

Questions?

Вам также может понравиться