最后边那位同学,来蹭课的吧?

周庄

前言

通常编码或代码都是分段式结构,中间用符号隔开以区别不同的代码。如:

YRO-2000-H188

H000.MP.E.B

当我们需要将最后一段代码取出时,往往因为段数不统一,字符数不统一等原因,很难实现。

今天就给大家讲一下如何快速提取最后一段代码,并探讨其中的原理。

如下图所示:是一套WBS编码,要求将最后一段代码的字符取出,如下图所示:

1 解法一

先看复合公式:

B4=TRIM(RIGHT(SUBSTITUTE(A4,".",REPT(" ",10)),9)),这里的10和9可以根据实际字符的长度调整,通常写100和99,基本可以涵盖所有字符,但因字符太长无法完全展示,这里用10和9代替,已经足够。

如果看不明白,我们可以对公式层层分解

第一步:

将所有的“.”替换成10个空格

C4=SUBSTITUTE(A4,".",REPT(" ",10))

第二步:取最右边9位字符

D4=RIGHT(C4,9)

第三步:去除多余的空格

E4=TRIM(D4)

2 解法二

将代码按分隔符“.”进行分列,然后取每行最后一个字符:

F2=LOOKUP(1,0/(B2:E2<>""),B2:E2)

3 解法三

第一步:

将所有分隔符替换成空值

B4-=SUBSTITUTE(A4,".","")

第二步:

计算分隔符的个数

C4=LEN(A4)-LEN(B4)

第三步:

将最后一个分隔符替换成“*”

D4=SUBSTITUTE(A4,".","*",C4)

第四步:

查找“*”出现的位置

E4=FIND("*",D4)

第五步:

返回“*”后面的字符

F4=RIGHT(D4,LEN(D4)-E4)

也可以将上述步骤合并成一个复合公式:

G4=RIGHT(SUBSTITUTE(A4,".","*",LEN(A4)-LEN(SUBSTITUTE(A4,".",""))),LEN(SUBSTITUTE(A4,".","*",LEN(A4)-LEN(SUBSTITUTE(A4,".",""))))-FIND("*",SUBSTITUTE(A4,".","*",LEN(A4)-LEN(SUBSTITUTE(A4,".","")))))

是不是头大了?我们追求的什么?是快速解决问题,而不是一步解决所有的问题,这对初学者非常重要,如果你理解不了,就尝试加辅助列,理解起来会容易得多。

总结

Rept(字符,重复次数):将字符重复几次

Substitute(文本串,原字符,新字符,替换第几个):将文本串的原字符由新字符代替,可以全部代替,也可以选择替换第几个。

Len(文本串):计算文本串的字符长度

Right(文本,个数):取文本串右边几个字符

Trim(文本串):去除文本串的多余空格

组合嵌套函数需要清晰的逻辑和函数调用能力,如果单个函数都不能很好的使用,那就加辅助列吧。

END

(0)

相关推荐

  • 用rept函数拆分数据就是好用

    观察一下可以发现原数据的特点,都是以相同的分隔符(~)连接的.这让我想到了以前的拆分方式,以~为分隔符进行拆分,提取拆分后的每个值,就和分列的效果一样.效果图如下: 它的拆分公式为=TRIM(MID( ...

  • 如何提取出最后一个斜杠(\)之前的内容?

    你好,我是刘卓.欢迎来到我的公号,excel函数解析.今天要分享的内容是如何提取出最后一个斜杠之前的内容,这类型的题很多小伙伴也会经常遇到. 下图A列是一些包含路径的文件名,现在要提取出最后一个斜杠前 ...

  • 怎么在Excel中给不足位数的数字前面补0?方法二你肯定想不到

    嗨咯大家好,我是亮仔 在工作中经常会遇到需要对数字补齐位数的情况,比如图中所示,需要把员工的工号变成统一的8位数,不足的用0补足 在Excel中我们怎么实现呢,今天亮仔将分享2个方法 点击观看视频教程 ...

  • 如何将代码补齐为指定位数?

    <偷懒的技术>读友群有朋友提问,如何将A列长短参差不齐的代码(代码的首字母均只有一位),用0补齐为五个字符长度,效果如B列C列如示. 一.公式1 公式思路 在自定义格式中,0是占位符,当数 ...

  • 有一个Excel函数叫:省时一整天,你却连我的名字都不知道…

    ★ 编按 ★ Hello大家好,今天给大家介绍一下SUBSTITUTE函数,它可以将数据中的旧值替换为新值,与我们熟悉的"查找替换"功能相似.很多小伙伴可能会说,简单的查找替换就能 ...

  • 文本函数trim和clean的用法

    接着说文本函数,今天主要讲下trim函数,顺便提一下clean函数.trim函数是个修剪函数,它的功能是除了单词之间的单个空格之外,移除文本中的所有空格.clean函数是删除文本中所有不能打印的字符. ...

  • 从分隔符连接的字符串中提取子字符串

    有时候,在工作表单元格中有一些以某分隔符连接的字符串,如图1中的单元格A1,其内容是以逗号连接城市名. 图1 如果我们想要提取其中的某个城市,例如第8个子字符串表示的城市名,则可以使用下面的公式: = ...

  • 如何统计带分隔符的字符串中不重复的子字符串数?

    Q:某些情况下,我们可能要统计带有分隔符的字符串中不重复的子字符串数.如下图1所示,我想知道单元格A1中不重复的数字有几个,应该怎么编写公式? 图1 A:下面的数组公式可以完成单元格A1的字符串不重复 ...

  • UCL地理系都给本科生上什么课?| 伦敦蹭课记1

    上学期期末的时候发现可以在UCL主页选择explore UCL中的current students 就会跳转到一个右侧边栏为resources的页面,其中有一个是: Teaching timetabl ...

  • 昨日记||蹭课和试菜

    所记之事生于农历丁酉年 闰六月初一日,周日 作者私信:Yxdniaoer 6点多醒来.旁边床上的催云同学也醒了.两同学聊聊昨晚遇到的老师和同学,感慨时光易逝相见一次不容易. 7点过,收到高中同学&qu ...

  • 博三没能顺利毕业的那位同学,你很大概率要等到博六了

    --以上,是我在法学院晃悠了十好几年的观察结论. --爬树鱼 但凡是在规定期限内毕业的同学,不论是宽宽松松游刃有余的毕业,还是紧赶慢赶掐着点儿提交科研成果,甭管过程有多狼狈,到毕业前夕都总是斗志满满的 ...

  • 庚子年“开学第一课”蹭课6记

    家长蹭课,往往担心会影响老师对孩子教学的展开,但是,蹭这一课何必多虑,多多益善. 9月1日,央视<开学第一课>,标志沉寂8个月的校园,即将响起朗朗书声.今年"少年强.中国强&qu ...

  • 野生动物上大学,黑熊蹭课,狐狸当模特,野猪爬楼梯,松鼠讨食吃

    "大王这次派我来巡山,我要把大学好好转一圈."大学校园基本上都依山傍水,有一些大学相对偏远,更加吸引许多野生动物前来"定居".像黑熊.狐狸.猴子与野猪等各种野生 ...

  • 【趣味课堂】这些“宝藏老师”火了!他们的课堂真有趣,网友:好想去蹭课

    学术过硬.灵魂有趣 ...... 这些多才多艺的"宝藏老师"太好玩了 藏不住啦 网友:好想去蹭课呀 也许有人会问 老师好好上课就好了 弄这些"花样"有必要吗 这 ...

  • 蹭课人生

    以前雅各布写了微小说,描述自己是个美国黑奴,后来为了主人刺杀了林肯.宗旨是报恩,报主人让自己学习之恩.其实这个黑奴是从蹭课开始,主人好心让其与自己的女儿一起学习成长. 现实中的雅各布也喜欢蹭课.蹭课无 ...

  • 因为不会“擦屁股”,儿子同学课上痛哭!

    今天OK回来跟我说,妈妈兴趣班里有同学中途去上了厕所,结果第二节课迟到了,他急匆匆地冲进教室的时候带着股臭味.后来有同学发现,他的大便弄在裤子外面了,就大喊-然后他大哭了.我想还好我每次都擦干净了! ...

  • 三年级溪溪同学数学的第五单元《面积》这课...

    三年级溪溪同学数学的第五单元<面积>这课目前掌握得不是很好,本周应该不会考这单元的测试卷,估计要到五一假期过后再考了! 淘了张第五单元测试卷准备五一假期巩固巩固--