CALCULATETABLE

在由给定筛选器修改的上下文中计算表表达式。

语法

CALCULATETABLE(<expression>,<filter1>,<filter2>,…)

参数

定义
Expression 要计算的表表达式
filter1,filter2,… 定义筛选器的布尔表达式或表表达式

用作第一个参数的表达式必须是返回表的函数。

下列限制适用于用作参数的布尔表达式:

  • 表达式不能引用度量值。

  • 表达式不能使用嵌套的 CALCULATE 函数。

  • 表达式不能使用扫描表或返回表的任何函数,包括聚合函数。

但是,布尔表达式可以使用查找单个值或计算标量值的任何函数。

返回值

包含值的表。

注释

CALCULATETABLE 函数将更改筛选数据的上下文,并在您指定的新上下文中计算表达式。对于在筛选器参数中使用的每一列,将删除该列上的现有筛选器,改为应用在筛选器参数中使用的筛选器。

此函数是 RELATEDTABLE 函数的同义词。

示例

下面的示例使用 CALCULATETABLE 函数获取 2002 年的 Internet 销售额的总和。该值随后用于计算与 2002 年的所有销售额相比的 Internet 销售额的比率。

下表显示来自以下公式的结果。

行标签 Internet SalesAmount_USD CalculateTable 2002 Internet 销售额 Internet 销售额与 2002 年销售额的比率
2001 $2,627,031.40 $5,681,440.58 0.46
2002 $5,681,440.58 $5,681,440.58 1.00
2003 $8,705,066.67 $5,681,440.58 1.53
2004 $9,041,288.80 $5,681,440.58 1.59
总计 $26,054,827.45 $5,681,440.58 4.59
=SUMX( CALCULATETABLE('InternetSales_USD', 'DateTime'[CalendarYear]=2002)
     , [SalesAmount_USD])

results matching ""

    No results matching ""