automation in excel reporting - marco kiesewetter

22
Automation in Excel Reporting BUSINESS / FINANCIAL ANALYSIS - BEST PRACTICES BY MARCO KIESEWETTER

Upload: marco-kiesewetter-mba

Post on 03-Jul-2015

1.528 views

Category:

Business


1 download

DESCRIPTION

Best Practices in Business Analysis / Financial Analysis. There are powerful ways to utilize Excel Automation to reduce reporting time, error rate, and increase ease of update.

TRANSCRIPT

Page 1: Automation in Excel Reporting - Marco Kiesewetter

Automation in Excel Reporting B USINESS / F INA NCIA L A NA LYSIS - B E ST PR ACT ICE S B Y MA R CO K IE SE WETT ER

Page 2: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Overview

• Why Automation?

• Never again Copy & Paste

• Using VBA for massive calculations

• The Master Setup Page

• Error Tracking

Page 3: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Why Automation?

Page 4: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Why Automation?

• Time savings

• Faster turnaround time, more frequent updates possible

• Freed up time for new developments & process improvements

• Reduction of human error

• Copy & paste, involved manual updates cause mistakes

• Overlooked adjustments of values, dates, names & calculations

Page 5: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Never Again Copy & Paste

Page 6: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Use of ETL / SQL

• In many cases it is possible for IT departments to access business systems via an API or other tools and to store the data on local SQL servers (ETL)

• Access the data from these SQL servers instead

• Instant push-of-a-button updates possible, even for end users of reports

• Possibility to move many calculations and table mash-ups into SQL

• No need for lengthy calculations in Excel

• Especially SUMIFs can take very long in Excel but can be lightning fast in SQL

• No more “pulling down formulas” next to pivot tables, which can easily be overlooked

• Many VLOOKUPs can be achieved in SQL already

• Same results every time

Page 7: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

No copy & paste on manual reports • Even if the need for manual reporting out of ERPs exist, some automation can still

be achieved

• For example using reports out of Salesforce:

• Prepare a network location to which everyone who will update an Excel report has access

• Run the Salesforce report and save it as CSV in this location, give it a meaningful name but do not include date or time in the name

• Access this CSV file with Excel (Data > Get External Data > From Text) instead of pasting its data into an Excel sheet • Alternatively link it to an Access database, do mash-ups & custom calculations in Access and use this

database as source for Excel

• Next time simply run the Salesforce report again and overwrite the CSV file with the new download • The connection to this CSV in your Excel/Access file will not change but it will now pull the fresh data

Page 8: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Using VBA for massive calculations

Page 9: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Why use VBA for calculations? • Large reports with many calculations on many rows of data can take very

long to calculate

• Sometimes calculation can become too complex

• I.e. dynamically translating “5 hours between May 10 and May 20” into correct amounts for each calendar week that includes part of this time period.

• These Excel calculations are very resource intensive. In most cases it is not possible to use the computer for other work at the same time

• These calculations may repeat before saving a spreadsheet, costing even more idle time

• Using VBA for large calculations leaves the computer usable and the calculated data is “values only” data, which speeds up saving and working with the file

Page 10: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Also use VBA for automation

• Updating several pivot tables from several external data sources in the right order

• Automatically start pulling data and calculating the report before you arrive at work in the morning

• Copying formulas and pasting them as values for the distribution version of the spreadsheet

• Deleting and hiding tabs that are needed for running the report but that do not need to be in the distribution version

• Automatically saving reports in the right folders with the right file name (that can include date and time of saving in the name)

Page 11: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

The Master Setup Tab

Page 12: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

The Master Setup Tab

• One tab with all settings, error checks and buttons for VBA automation

• Have slicers for all pivot tables that need updates and/or checks of specific filters

• Have error checks all in one place, visible together at any time

• Have all manual setup values and calculated master values (i.e. report date) in one place

• Have an update history available to see what automation ran and when

Page 13: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Master Setup Tab SOME EX AMPLES AND EX PLANAT IONS

Page 14: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Example of a Master Setup Tab

Page 15: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Automatically start pulling data and run calculations in the morning to have it ready when you arrive at work

Page 16: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Console style log that shows step by step what the automation did, when it did and how long it took (Helps with performance improvements and trouble shooting)

Page 17: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Automatically determining today’s date and yesterday’s date for change reporting (Automate that on a Monday: Yesterday = Friday) Allow overrides to account for holidays, unscheduled updates etc.

Page 18: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Arrange automation buttons in order with a brief guideline on how to update the report Color code instructions to help noticing where to make changes

Page 19: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Error Tracking

Page 20: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Check if formulas next to pivot tables reach all the way down to the last line of the pivot table. Conditional Formatting on Errors to make them stand out right away. Similar error checks should be used to compare data points that should be consistent across sheets if everything works as expected.

Page 21: Automation in Excel Reporting - Marco Kiesewetter

marco kiesewetter

Other Possible Checks on the Setup Tab • Compare totals across tabs and display differences

• Is one total different? Why?

• Compare totals to expected values

• Do the numbers make sense?

• Compare dates to expected values

• Are data sources out of date / wrong?

• Explore ratios and evaluate their validity

• i.e. hours worked month to date : days so far in the month

• Use conditional formatting to emphasize values that appear wrong

Page 22: Automation in Excel Reporting - Marco Kiesewetter

Thank You QUE ST IO NS?

Reach out: https://www.linkedin.com/in/marcokiesewetter