Return 字符串,如果列中存在值
Return string if values exists in column
我有一列包含文本,例如,
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 函数,但我没有让它工作,因为它只有 returns "value if false"。我在 Column1 上的格式是文本。
column2 = IF(CONTAINS(Table1;Table1[column1];"3";Table1[Column1];"4");"3-8";"9.5-10").........
我也尝试过使用 FIND 函数,但没有成功。
有人有任何提示吗?如果现在有人知道如何在 Excel 中执行此操作,也许可以那样解决?:D
/D
我不确定您对分桶值的确切逻辑是什么,但您应该能够按照以下几行写一些东西:
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
函数将 return 第一个计算结果为 true 的东西,否则,它 return 是最后一个参数。第一对检查值是否可以转换为数字,如果不能转换为 returns 原始值。接下来的两对检查数字是否在特定范围内,并且 returns 为这些范围指定了字符串。
这里有一个 link 更详细地解释了 SWITCH(TRUE()...)
构造:
https://powerpivotpro.com/2015/03/the-diabolical-genius-of-switch-true/
我有一列包含文本,例如,
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 函数,但我没有让它工作,因为它只有 returns "value if false"。我在 Column1 上的格式是文本。
column2 = IF(CONTAINS(Table1;Table1[column1];"3";Table1[Column1];"4");"3-8";"9.5-10").........
我也尝试过使用 FIND 函数,但没有成功。 有人有任何提示吗?如果现在有人知道如何在 Excel 中执行此操作,也许可以那样解决?:D /D
我不确定您对分桶值的确切逻辑是什么,但您应该能够按照以下几行写一些东西:
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
函数将 return 第一个计算结果为 true 的东西,否则,它 return 是最后一个参数。第一对检查值是否可以转换为数字,如果不能转换为 returns 原始值。接下来的两对检查数字是否在特定范围内,并且 returns 为这些范围指定了字符串。
这里有一个 link 更详细地解释了 SWITCH(TRUE()...)
构造:
https://powerpivotpro.com/2015/03/the-diabolical-genius-of-switch-true/