美文网首页
筛选判断函数Hasonevalue和Hasonefilter的用

筛选判断函数Hasonevalue和Hasonefilter的用

作者: Data_Skill | 来源:发表于2019-05-15 15:06 被阅读0次

    2. HASONEVALUE

    A. 语法

    Hasonevalue(<columnName>)
    
    参数 描述
    ColumnName 用于检查的列

    B. 返回

    标量(逻辑值)——False or Ture

    C. 注意事项

    通常和If函数搭配使用

    D. 作用

    判断某列是否只有一行数据。

    等同于:COUNTROWS ( VALUES ( <ColumnName> ) ) = 1

    E. 案例

    案例案例
    总成绩:=SUM([成绩])
    Hasonevalue总成绩:=if(Hasonevalue('表2'[姓名]),[总成绩],Blank())
    
    直接判断直接判断

    解释:
    我们可以看到在右边的透视表中,只显示了李老师,是因为只有李老师的数据是唯一值。

    再来看一个案例:


    外汇案例外汇案例

    我们希望在我们选择货币的时候能够直接进行转换,效果如下。


    外汇销售金额外汇销售金额
    外汇销售金额:=If(Hasonevalue('汇率'[货币]),
                               Firstnonblank('汇率'[汇率],"")*[总销售金额],
                               Blank())
    

    解释:
    通过Hasonevalue判断是否为选择了单个货币种类,则计算转换汇率。这里需要注意的是,在这个业务模型中,总销售金额的货币是不确定的,是通过我们货币进行转换成人民币,而不是人民币转换成美金。当然也可以换过来操作。

    外汇销售金额:=If(Hasonevalue('汇率'[货币]),
                               Divide([总销售金额],Firstnonblank('汇率'[汇率],"")),
                               Blank())
    
    外汇换算外汇换算

    3. Hasonefilter

    A. 语法

    HasoneFilter(<columnName>)
    

    B. 返回

    标量——逻辑值(Ture or False)

    C. 注意事项

    哪些会涉及到筛选?

    • 外部因素:行,列,筛选器,切片器
    • 表筛选函数:Filters,Distinct,Values等

    D. 作用

    等同于:COUNTROWS ( FILTERS ( <ColumnName> ) ) = 1

    E. 案例

    案例案例
    HasoneValue总成绩:=If(Hasonefilter([姓名]),[总成绩],Blank())
    
    hasonefilter案例hasonefilter案例

    因为姓名被放入到列里面,是被筛选了,所以成绩会显示。而另一边只放了学科和教课老师,姓名没有在筛选条件里,所以不显示。

    Hasonefilter和Hasonevalue筛选判断函数的差异

    我们来看3个图

    HasoneValue总成绩:=If(HasoneFilter([姓名]),[总成绩],Blank())
    HasoneFilter总成绩:=If(HasoneValue('表2'[姓名]),[总成绩],Blank())
    
    hasonefilter差异1hasonefilter差异1

    解释:
    姓名未被筛选,所以Hasonefilter返回空值;
    姓名因为有多个值,所以Hasonevalue返回空值。

    hasonefilter差异2hasonefilter差异2

    解释:
    姓名被筛选,所以HasoneFilter显示成绩;
    姓名被作为列后,只有单个值,所以HasoneValue显示成绩。

    hasonefilter差异3hasonefilter差异3

    解释:
    姓名未被筛选,所以Hasonefilter返回空值;
    教师被筛选后,因为只有李老师对应一个姓名,也就是李四。所以返回李四的李老师的成绩60。

    请点赞并转发,让更多的人了解使用。

    相关文章

      网友评论

          本文标题:筛选判断函数Hasonevalue和Hasonefilter的用

          本文链接:https://www.haomeiwen.com/subject/civpaqtx.html