Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2961
  • Last Modified:

Calculating variance in a matrix

I have a chart that is displaying the Monthly Sales of the current fiscal year to the last fiscal year.  Now I am making a small table to the side with the actual $ figures of the monthly sales with a column showing the variance of one month this year to the same month last year.  Is there an easy way to do this?  I tried using the Var function but it doesn't calculate correctly.  What I need is to take the amount in the second column (2014) for each month/row and minus the amount in the first column (2013) for the same month/row.  Would it be easier to just layout a table with fixed columns and rows and then name the cells and figure it out that way?  I'd like to make it as dynamic as possible so I was hoping I could add a total column and then modify the formula to get the calculation I need but I'm not sure how to get that.  

Any help would be greatly appreciated!

Monthly sales
0
HSI_guelph
Asked:
HSI_guelph
  • 3
  • 2
1 Solution
 
Nico BontenbalCommented:
You can try this expression:
=Last(Fields!Amount.Value) - First(Fields!Amount.Value)

Open in new window

But it depends on your data if this will work. The data needs to be summed by year and month already, and the data needs to be sorted by year (so first is 2013 and last is 2014). See the attached example.

If your data has another format it might still be possible to calculate the difference with a more complex formula. But to help you with that I need an example of your data.
MatrixVariance.rdl
0
 
HSI_guelphAuthor Commented:
That did the trick!  I was sorting the data from May - April 2013, then May - April 2014.  Thank you very much!
0
 
HSI_guelphAuthor Commented:
Finished product
Though I think they'll want to see the total of the variance between the two years but I think I can do an if statement where if fiscal year is 2014, sum the sales minus a second if statement where if fiscal year is 2014, sum the sales.
0
 
Nico BontenbalCommented:
When you use this formula:
=Sum(iif(Fields!Year.Value = Max(Fields!Year.Value), Fields!Amount.Value, Fields!Amount.Value - Fields!Amount.Value)) - Sum(iif(Fields!Year.Value = Min(Fields!Year.Value), Fields!Amount.Value, Fields!Amount.Value - Fields!Amount.Value))

Open in new window

It will work for both the detail and the total rows.
Max(Fields!Year.Value)

Open in new window

returns 14, and
Fields!Amount.Value - Fields!Amount.Value

Open in new window

returns 0 so the first part of the formula is like:
Sum(iif(Fields!Year.Value = 2014, Fields!Amount.Value,0))

Open in new window

Which is the sum of all the 2014 values. The second part of the formula  (after the - ) is the same but with min (so 2013).

I think displaying 0.00 for rows that only have data for one of the year is not correct. I think those cells should be empty. But this is easily solved by using a custom format like:
#,##0.00;(#,##0.00); ;

Open in new window

MatrixVariance.rdl
0
 
HSI_guelphAuthor Commented:
Thank you very much!!  That's awesome!  The boss will be impressed :)
0

Featured Post

Ask an Anonymous Question!

Don't feel intimidated by what you don't know. Ask your question anonymously. It's easy! Learn more and upgrade.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now