如果您有一个包含可应用的所有格式的表,则可以实现此目的。
我创建了这些表作为示例:
MyTable
CurrencyFormat
In the MyTable
表我创建了两个名为Format
and Total Sales
.
Format = LASTNONBLANK ( CurrencyFormat[Format], 1 )
Total Sales = Total Sales = FORMAT(SUM(MyTable[Sales]),[Format])
Note Total Sales
措施使用[Format]
测量以从切片器获取选定的格式。
添加 ChicletSlicer 和设置FormatName
专栏来自CurrencyFormat
表中Category
窗格中,您应该得到预期的结果。
另请注意,我使用的格式可能与您需要的不同,因此您必须对格式字符串添加一些更改,快速阅读文档 https://technet.microsoft.com/en-us/library/ee634206(v=sql.105).aspx关于它。
Format Region
$#,##0;($#,##0) SpendInUSD
£#,##0;(£#,##0) SpendInGBP
€#,##0;(€#,##0) SpendInEUR
UPDATE:OP想要根据切片器获得右列的总和。
幸运的是,您的表对于每种货币都有一列,正如您在我的建议中发现的那样,将切片器值映射到您的度量,这是最终的表达式:
Spend =
IF (
LASTNONBLANK ( 'Currency'[Code], 1 ) = "GBP",
SUM ( Invoice[SpendGBP] ),
IF (
LASTNONBLANK ( 'Currency'[Code], 1 ) = "USD",
SUM ( Invoice[SpendUSD] ),
SUM ( Invoice[SpendEUR] )
)
)
如果您需要进一步的帮助,请告诉我。