使用power pivot中的max函数按逗号拆分'表1'[人员]中每行的数据再用去重
时间: 2024-02-22 15:59:54 浏览: 127
可以使用以下公式来实现您的需求:
```
=MAXX(UNIQUE(FILTERXML("<root><s>"&[@人员]&"</s></root>","//s")),VALUE(SUBSTITUTE(FILTERXML("<root><s>"&[@人员]&"</s></root>","//s"),",","")))
```
这个公式会按照每行的人员数据进行拆分,并使用FILTERXML函数将其转换为XML格式。然后,使用UNIQUE函数去掉重复的值,并使用MAXX函数获取去重后的最大值。最后,使用VALUE函数将字符串转换为数字,并使用SUBSTITUTE函数去掉其中的逗号。
请注意,这个公式需要在Power Pivot中的计算列中使用,并将其应用于每一行。
相关问题
使用power pivot中的函数按逗号拆分'表1'[人员]中每行的文本数据再用去重,没有SPLIT函数
如果没有SPLIT函数,也可以使用一些其他的函数来实现这个需求。
下面是一个示例公式:
=DISTINCT(FILTERXML("<a><b>" & SUBSTITUTE('表1'[人员], ",", "</b><b>") & "</b></a>", "//b"))
该公式使用了FILTERXML函数和SUBSTITUTE函数来实现按逗号拆分,并使用DISTINCT函数进行去重操作。
具体来说,SUBSTITUTE函数将逗号替换为闭合的XML标签,然后FILTERXML函数将这个字符串解析为XML,并使用XPath表达式"//b"来取出所有的<b>标签中的文本内容,最后DISTINCT函数对结果进行去重操作。
请注意,这种方法可能会受到XML解析器的限制,因此不适用于所有情况。
使用power pivot中的max函数按逗号拆分'表1'[人员]中每行的文本数据再用去重
可以按照以下步骤操作:
1. 在Excel中打开需要处理的数据表,确保已经加载了Power Pivot插件。
2. 在“Power Pivot”选项卡中,选择“添加表”命令,将需要处理的数据表添加到数据模型中。
3. 在“Power Pivot”选项卡中,选择“计算字段”命令,在弹出的窗口中输入以下公式:
=MAX(LEN('表1'[人员])-LEN(SUBSTITUTE('表1'[人员],",",""))+1)
这个公式的作用是计算每行文本数据中逗号的数量,再加1得到该行数据中人员的数量最大值。
4. 点击“添加”按钮,将计算字段添加到数据模型中。
5. 在“Power Pivot”选项卡中,选择“数据视图”命令,进入数据视图。
6. 在数据视图中,选择需要处理的数据表,右键选择“添加计算列”,在弹出的窗口中选择刚刚创建的计算字段。
7. 点击“确定”按钮,等待计算完成。
8. 在数据视图中,选择需要处理的数据表,右键选择“去重”,按照默认设置进行去重操作。
9. 完成上述步骤后,即可得到按逗号拆分后去重的人员列表。
阅读全文