Dax - 计算列中变量的语法错误

时间:2016-01-12 09:33:46

标签: excel syntax-error calculated-columns powerpivot dax

我正忙着学习如何在PowerPivot for Excel 2013中使用DAX公式中的变量。

将此公式放在计算列中

=
VAR
    CurrentPrice = Product[Unit Price]
RETURN
    COUNTROWS (
        FILTER (
            VALUES ( Product[Unit Price] ),
            Product[Unit Price] > CurrentPrice
        )
    ) + 1

我收到以下错误:

The syntax for 'CurrentPrice' is incorrect.
The calculated column 'Product[CalculatedColumn1]' contains a syntax error. Provide a valid formula.

我无法弄清楚这个公式有什么问题。

我正在使用contoso.xlsx示例工作簿。

1 个答案:

答案 0 :(得分:2)

Excel 2013的Power Pivot不支持DAX变量。 Power Pivot for Excel 2016和Power BI Desktop中提供了此功能。

您可以重写此特定计算列以使用EARLIER():

 <?php

 $dsn = 'mysql:host=localhost:1842;dbname=mesimot;charset=utf8';
 $db = new PDO($dsn, 'root', ''); 

 $sql = "INSERT INTO mesima VALUES ('', 'first task','0')";
 $count = $db->exec($sql);

 if($count){

     echo 'updated!' . '<hr>';

 }

或者,您可以完全取消FILTER():

=COUNTROWS (
    FILTER (
        VALUES ( 'Product'[Unit Price] ),
        'Product'[Unit Price] > EARLIER( 'Product'[Unit Price] )
    )
) + 1