Create a dashboard in excel using multiple sheets and queries

So how do you create a simple dashboard pulling in multiple data from multiple entities in Excel?
Its simple just combine dynamic excel sheets and create a header sheet like this:
1) First perform an advanced find for the first set of data that you wish to dashboard on i.e. Accounst by Industry and export to excel as a Dynamic Pivot or Worksheet
2) Leave excel open and go back into Microsoft CRM and perform the next query i.e. Opportunities by Industry and export to excel as a Dynamic Pivot or Worksheet
3) Now right click on the open worksheet and select move. Select the original open workbook. This copies the sheet and the query to the original workbook. You now have to different data sets in the one excel workbook.
4) Now you just need to create a new sheet for your dashboard i.e. Dashboard
5) Then create your pivot table charts and locate them on the Dashboard sheet.
6) Save your excel as you Industry Review Dashboard and you now have your simple dashboard that you can open and review, or load to excel services in SharePoint and view in CRM.

How to email CRM 4.0 Reports using OOB functionality

This is a great post on how to schedule CRM reports and send to users email.

Incorrect SQL query when export data using an Advanced find date query

Just spotted an interesting bug with a query I was running using Advanced find.
My query was display all opportunities that are open and closing in the next 4 months. The results were returned correctly via the advanced find search, but when I exported the data the SQL definition was incorrect.
The original query  string looked like this:
where ((opportunity0.statecode = 0 and  opportunity0.estimatedclosedateutc >= dbo.fn_NextXMonth(GetUTCDate(), 4) and opportunity0.estimatedclosedateutc < GetUTCDate() ))
If you notice the >= and second < are the worng way around, the query should of looked like this:
where ((opportunity0.statecode = 0 and  opportunity0.estimatedclosedateutc < dbo.fn_NextXMonth(GetUTCDate(), 4) and opportunity0.estimatedclosedateutc > GetUTCDate() ))
Notice also I removed the first = as SQL interprets dates as Date Time and not just Date so my returned results included records that fell out the date range.
So my workaround was to manually update the SQL definition in my excel report and save this as a standard report.