打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
题目很简单,但要写出最简洁巧妙的公式,还是需要一定的功底的!


送人玫瑰,手有余香,请将文章分享给更多朋友

动手操作是熟练掌握EXCEL的最快捷途径!

【置顶公众号】或者【设为星标】及时接收更新不迷路



小伙伴们好,今天要举办一个擂台竞赛,看看谁写出的公式最短最巧妙!

题目是这样的:



如果源数据中的文本前8位是数字,则提取数字,否则就直接引用源数据。

题目要求就是这么多,快来看看你怎么样写出最短的公式吧!


01

第一个公式,长度63个字符。



在单元格B2中输入公式“=IF(LEN(MAX(IFERROR(LEFT(A2,ROW($1:$20))*1,0)))=8,LEFT(A2,8),A2)”,三键回车并向下拖曳即可。

思路:

  • LEFT函数依次从左向右分别提取1个,2个,... 20个字符,并将它们转换成数值型数字

  • IFERROR函数将错误值转换为0

  • 提取出最大的数字。如果最大字符长度的数值为8,则提取该长度的字符,否则引用对应的单元格


02

第二个公式,长度59个字符。



在单元格B2中输入公式“=IF(ISERR(SUM(--MID($A2,ROW($A$1:$A$8),1))),$A2,LEFT($A2,8))”,三键回车并向下拖曳即可。

思路:

  • 利用MID函数提取第一个至第八个字符,并转换为数字

  • SUM函数求和。如果有提取出来的字符有文本字符,则SUM函数的结果返回错误值

  • ISERR函数判断是否为错误值

  • IF函数进行逻辑判断,并进行不同的操作


03

第三个公式,长度42个字符。这一步,由于是一次性提取长度为8的字符,因此源数据中“20230101元旦快乐”可以更改为“2023/1/1元旦快乐”。



在单元格B2中输入公式“=IF(IFERROR(-LEFT(A2,8)<0,0),LEFT(A2,8),A2)”,并向下拖曳即可。

思路:

  • LEFT函数提取长度为8的字符,并转换为负数,并与0比大小

  • IFERROR将错误值转换为0。这一步会返回TRUE或者FALSE两个结果

  • IF函数做逻辑判断,进而做不同的操作


04

最短的公式。



好了朋友们,今天和大家分享的内容就是这些了!喜欢我的文章请分享、转发、点赞和收藏吧!如有任何问题可以随时私信我哦!

-END-

长按下方二维码关注EXCEL应用之家

面对EXCEL操作问题时不再迷茫无助

我就知道你“在看”

推荐阅读
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Excel发票实例学函数:Len、Rept、Mid、Column、NumberString
Excel如何实现按字符长度进行排序
8组Excel函数,解决您工作中80﹪的难题
批量提取字符,除了用Ctrl E外,还有这2个方法可选
Excel函数:Find的数组用法几例
20个常用Excel函数基础教程,收藏备用,帮你快速学函数
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服