有两列文本,要从第一列中去除第二列中与之重复的字符。这个需求如果用 M 函数就很简单。
如果觉得一步到位有困难,那么就跟我学,从最基础的公式开始,一次解决一个问题,逻辑推演,公式秒懂。
案例:
从下图 1 的第一列中扣除第二列中的字符,效果如下图 2 所示。
解决方案:
1. 选中数据表的任意单元格 --> 选择任务栏的“数据”-->“从表格”
2. 在弹出的对话框中保留默认设置 --> 点击“确定”
表格已上传至 Power Query。
3. 选择任务栏的“添加列”-->“自定义列”
4. 在弹出的对话框中输入所需的名称 --> 输入以下公式 --> 点击“确定”:
Text.Remove([秘钥],[秘钥2])
但是出错了。什么原因呢?因为 Text.Remove 函数只能从文本删除列表的信息,也就是说第二个参数必须是列表。
那么好办了,我们将第二个参数先转换成列表不就行了。
5. 给第二个参数外面套上 Text.ToList 函数,完整公式如下:
Text.Remove([秘钥],Text.ToList([秘钥2]))
又有问题了,第二列为空的部分,除去后出现错误值。那就加个条件函数嘛。
6. 在公式外面再加上 if 条件函数,如下:
if [秘钥2]=null
then [秘钥]
else
Text.Remove([秘钥],Text.ToList([秘钥2]))
7. 选中最后一列 --> 选择任务栏的“主页”-->“删除列”-->“删除其他列”
8. 选择任务栏“主页”-->“关闭并上载”-->“关闭并上载至”
9. 在弹出的对话框中选择“表”--> 选择“现有工作表”和所需上传至的位置 --> 点击“加载”
这样就能得到绿色表格中的结果了。