我有一个列,它包含文本,例如,
column1
3
4
5
6
7
8
9.2
10
11
txt1
txt2
我想要创建一个新的column2,它为我提供了以下输出。
column1 column2
3 3-6
4 3-6
5 3-6
6 3-6
7 7-10
8 7-10
9.2 7-10
10 7-10
11 11
txt1 txt1
txt2 txt2
我尝试了下面的Dax函数,但我没有让它工作,因为它只返回“值如果是假的”。我在Column1上的格式是文本。
column2 = IF(CONTAINS(Table1;Table1[column1];"3";Table1[Column1];"4");"3-8";"9.5-10").........
我已经尝试了查找功能,也没有运气。有人有什么建议吗?如果现在有人正在Excel中做这件事,也许可以这样做?:d /D。
发布于 2018-03-08 16:14:50
我不太清楚你对价值的逻辑是什么,但是你应该能够写一些这样的东西:
Column2 = SWITCH(TRUE(),
ISERROR(VALUE(Table1[Column1])), Table1[Column1],
VALUE(Table1[Column1]) >= 3 && VALUE(Table1[Column1]) <= 6, "3-6",
VALUE(Table1[Column1]) >= 7 && VALUE(Table1[Column1]) <= 10, "7-10",
Table1[Column1])
这个SWITCH
函数将返回计算结果为true的第一件事,否则,它将返回最后一个参数。第一对检查该值是否可以转换为一个数字,如果不能返回原始值。接下来的两对检查数字是否在某些范围内,并返回这些范围的指定字符串。
下面是一个更详细地解释SWITCH(TRUE()...)
结构的链接:
https://powerpivotpro.com/2015/03/the-diabolical-genius-of-switch-true/
https://stackoverflow.com/questions/49168713
复制相似问题