首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

费老鼻子劲去除不掉 Excel 数据末补位至等长的 0 值,最后得亏 PQ 出手

公众号平台最新的推送规则对技术类文章不太友善,如果不想错过干货,请务必 “设为星标”哦!!!

点击上方蓝字 --> 点击“...”--> 选择“设为星标

网友求助的一个难题:有一列数据,被人做了神仙设置,在每个数值的后面补位 0 值,使得整列位数值位数等长。

正所谓“请神容易送神难”,现在想要去除后面补位的所有 0 值,怎么实现?

这个问题呢,如果要用公式解决,非常困难,但是在 Power Query 中却 so easy。

案例:

下图 1 是一列工号,每个数据末尾用 0 补位值等长。请去除每个工号后面的补位 0,如果中间有 0 则需要保留。

效果如下图 2 所示。

解决方案:

1. 选中数据表的任意单元格 --> 选择菜单栏的“数据”-->“从表格”

2. 在弹出的对话框中点击“确定”

表格已上传至 Power Query。

3. 选择菜单栏的“添加列”-->“自定义列”

4. 在弹出的对话框中按以下方式设置 --> 点击“确定”:

新列名:输入“去0工号”

自定义列公式:输入 =Text.TrimEnd(Text.From([工号]), "0")

公式释义:

Text.TrimEnd 的作用是用于清除字符串末尾指定的连续字符。

5. 选中“工号”列 --> 选择菜单栏的“主页”-->“删除列”

6. 选择菜单栏的“主页”-->“关闭并上载”-->“关闭并上载至”

7. 在弹出的对话框中选择“现有工作表”及所需上传至的位置 --> 点击“加载”

绿色区域就是去除末尾 0 值后的数据列表。

附加题:那么问题又绕回来了,如果要用 Power Query 在数据列末尾用 0 补位至若干位数,如何实现呢?

8. 双击右侧“工作簿查询”中的“表1”,返回 Power Query。

9. 选择菜单栏的“添加列”-->“自定义列”

10. 在弹出的对话框中按以下方式设置 --> 点击“确定”:

新列名:输入“后补至8位”

自定义列公式:输入 =Text.PadEnd(Text.From([去0工号]),8,"0")

公式释义:

Text.PadEnd 函数的作用是在字符串末尾插入指定的字符以满足定长。

11. 选择菜单栏的“主页”-->“关闭并上载”-->“关闭并上载”

12.  A19 单元格的行数,会生成一组 1 至 19 的数组;

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OggUlTMpZDAffLywqeZhS63A0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券