• There's two issues here. Firstly MDX won't let you put measures on both the columns and the rows. Best to keep measures on the columns and dimensions on the rows.

    The second issue is your calculation for yesterday. What you want to do is dynamically produce a 'yesterday' based on today's date, but it needs to map directly to your date dimension. The way you have the yesterday calc doesn't make sense to the cube, it's just a date out of context.

    You can do this by re-creating a member as a string and then using the StrToMember() function to get the cube to recognise it as a member reference.

    So if your target looks like this:

    [Time].[Year - Month - Period - Date].[Date].&[2013-03-10T00:00:00]

    You would create a function like

    StrToMember("[Time].[Year - Month - Period - Date].[Date].&[" + Format(dateadd("d",now(),-1), "yyyy-MM-ddT00:00:00") +"]")

    and use that directly in the rows part of the MDX. Don't create it in the "With" part where you are defining custom measures.