Archive for the ‘Microsoft Excel’ Category

Applying a complex Excel model to multiple input values

August 28, 2009

You may remember the day you were introduced to Excel’s pivot tables. It might have happened through a co-worker, a book or an online tutorial but the effect was probably along the lines of: “Wow! How did I ever analyze data without them?”

Well, I sort of went through the same experience again several months ago reading about Dermot Balson’s Merge pattern (sample file here) – thanks to a post by Jim Johnson. I would love to elaborate some other time on Dermot’s idea of applying the concept of design pattern to spreadsheets but I will delve here specifically into his merge pattern, which makes use of Excel data tables.

According to Microsoft, data tables allow you to “test different input values for a formula without having to retype or copy the formula for each value” (Q282852). This is typically useful for sensitivity analysis, but it also works great for running complex calculations against multiple records in a data set.

I’ve argued before that most (structured) data benefits from being stored in a a flat file format. One of the downsides of doing so, however, is the amount of work involved in running a complex Excel model against all rows in a flat file. If you don’t intend to migrate your model to a relational or multidimensional database, then data tables as a wonderful way of achieving just that – free-form spreadsheet computations applied to structured data.

Additional links of interest

Happy Excel modeling!

Data-related tips & tricks from around the web

August 21, 2008

You’ve probably noticed that you shouldn’t trust this blog for real-time news tracking. The following are essentially timeless, however, so here we go…

Rob van Gelder (of DailyDoseOfExcel fame) shared a tip back in May on how to build a simple Gantt chart in Excel. I’m posting a link here because it’s the easiest I’ve seen so far.

Jeff Smith exposes his Golden Rule of data Manipulation over at sqlteam.com. While he elaborates on his statement from a programmer’s standpoint, it’s all applicable to knowledge workers and spreadsheets:

“It is always easier and more flexible to combine data elements rather than to break them apart”

From a data analysis standpoint, Jeff’s examples are essentially related to what I would call attributes (such as phone numbers). His rule still holds true with values, though. As you work towards summarizing a data set (say, daily financial transactions that you want to analyze by month), you’ll want to aggregate values as late as possible instead of running the risk of losing valuable information by aggregating too early. Spreadsheet programs hit a limit between 65k and 1M records, but there are tools to take it from there – which brings us to Paul Steynberg’s advice for considering OLAP tools as part of a financial system manager’s toolbox.

OLAP technologies are particularly well suited to handling large amounts of data. I personally share Paul’s opinion of Microsoft’s SQL Server Analysis Services, which I would describe to the non-initiated as Excel on steroids. On lots of steroids, that is. SSAS gives you access to summaries and advanced computations based on millions of underlying records, usually responding in just a few seconds.

EDIT (Sep. 10, 2008): Using a definition as crude as “Excel on steroids” for SSAS left me feeling a little guilty. I’m over it now, having just read Andrew Fryer’s post on business intelligence for small business;-)

Excel dashboard competition

May 1, 2008

Andreas Lipphardt informed me that BonaVista Systems (or should we now say XLCubed?) are running an Excel dashboard competition. Participants can win an iPhone, a data visualization workshop or one of Stephen Few’s books.

OLAP Quickies

August 29, 2007

I can’t seem to find the original Hugh McLeod quote Andrew Fryer is referring to, but here is how it goes anyway:

On-Line Analytical Processing (OLAP) is actually about business, it just sounds like a science project.

This potential confusion is one more hint that this field (multidimensional modeling and analysis but really Business Intelligence in general) requires both technical skills and business acumen. Probably just another argument in favor of Business Intelligence Competency Centers

Still on the OLAP front, a new (beta) version of Palo is available. Wikipedia has a short summary:

Palo is a memory resident multidimensional (OLAP or MOLAP) database server [...] typically used as a Business Intelligence tool for Controlling and Budgeting purposes with Microsoft Excel as a user interface. Beyond the multidimensional data concept, Palo enables multiple users to share one centralised data storage (“Single version of the truth“).

There’s a (somewhat old) discussion thread here. I only played 10 minutes with it – it seems to offer many interesting features. You can also apparently connect Palo and Microsoft Analysis Services using software from Cubeware.

XLCubed acquires BonaVista Systems, publisher of MicroCharts

August 14, 2007

Now this is interesting. Not only do the XLCubed and MicroCharts Excel add-ins work much better together today than when I originally wrote about combining them, but the publisher of the former has actually acquired the publisher of the latter. This is extracted from the message that went out to MicroCharts users:

Linking XLCubed with MicroCharts connects Dashboards direct to the data and makes them dynamic. It also makes them easier to build as the OLAP Cube can also store the control information for the dashboard as well as the data.

This sounds promising, particularly if microcharts are made available within XLCbubed grids. Formula-mode integration is perfect for dashboard-style reporting but remains limited for dynamically exploring data. More on all this when I’ve had a chance to actually try the “integrated” version.

Spreadsheet design best practice

June 22, 2007

Thanks to Dick Kusleika‘s article on EuSpRIG 2007 and after browsing the latter site a bit, I located a couple interesting papers I want to share here. These are full of good high-level tips related to spreadshet design:

Excel and accounting-related blogs

April 13, 2007

I just happened to discover the Accounting Mechanics blog which focuses on “tools and techniques of the management accountant” and happens to have a link back to my own blog. I’ll catch up with posts there as soon as possible since there seems to be quite a few interesting articles. I’ve already spotted the following:

There’s also a link to another potentially interesting blog, that one focusing on “professional spreadsheet development stuff”.

Several great Excel-related articles

April 4, 2007

Charles W. Kyd has posted several great articles on his ExcelUser website:

If you spend your days working with Excel, you’ll want to subscribe to Charles’ Excel for Business newsletter.

The power of Excel-friendly OLAP

February 12, 2007

Dick Kusleika pointed a few days ago to a paper by Charley Kyd. In it, Charley gives a convincing overview of the possibilities revealed by OLAP-powered Excel solutions. Speaking from experience, I can only attest to the amazing things this combination allows you to achieve.

I’m surprised by Charley’s statement that TM1 and PowerOLAP “return data to Excel about 100 times faster than Analysis Services does”, but then I haven’t tested either to compare it to SSAS coupled with XLCubed. This combination is so fast already that I’m not sure how a user would pick up a 100-times increase in query speed. The article is nonetheless very much worth reading, particularly if the combination of OLAP and Excel sounds new to you.

If you think you’re familiar with cubes because you’ve used Business Objects before, you may want to check out my post comparing Business Objects Universes (and cubes) to the cubes provided by Microsoft Analysis Services.

7 habits of effective desktop data management

November 13, 2006

Following up on a somewhat theoretical introductory post related to desktop data management, Here are 7 habits which which should prove useful when approaching any desktop data-related task. These will be refined based on the discussion you and I will have here, so let me know what you think.

I was actually shooting for 10 commandments, but 7 habits sounded good, too. Seven should be enough to start the discussion anyway, and leave room for expansion without making the number ridiculously large should we end up adding a few.

Now remember. This is supposed to apply to desktop work so let’s not wander off too far into foreign keys, surrogate keys or normal forms territory;-)

Here we go:

  1. Any data processing task takes you through the steps of organizing data, processing it and presenting it. Acknowledge these steps in your workflow and organize around them.
  2. Do the hard work first. Looking up and presenting information is both easier to perform and more valuable when it is base on a well-organized data layer.
  3. Organize your data as flat files instead of free-form tables. The flexibility of spreadsheets makes them both a blessing and a curse, often leading you to design the processing and presentation layers first and the data organization layer last. Organizing your data as flat files may require some more work upstream but will pay off handsomely downstream. See #2.
  4. Strive for one source of truth. An important piece of information should have to be changed in one place only and cascade from there.
  5. As much as reasonably possible, always work with a full dataset that includes domains contiguous to the one you’re currently working on. You’ll be much better off keeping too much information and identifying records appropriately than discarding what you still think you won’t need – but will.
  6. Don’t design for exceptions. You want a few standard tools that abide by the principles above while allowing you to handle exceptions, not multiple unmanageable tools that were each designed to handle a specific exception.
  7. Use identifiers. Referred to as Unique IDs or keys in database jargon, the important idea to remember is that you want a way to lookup a particular item of data at any point in time and distinguish it unequivocally from its neighbors.

Each of these items deserves several posts and I will be following up on each – hopefully with a mix of opinions, examples, tool-agnostic tips, and tool-specific tricks.


Follow

Get every new post delivered to your Inbox.