首页 > 其他分享 >用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!

时间:2023-10-12 15:32:18浏览次数:30  
标签:REPT 函数 分列 COLUMN 单元格 Excel MID 替代

1职场实例


小伙伴们大家好,今天我们来讲解一个Excel在职场中使用频率最高的技巧之一:“分列”功能。有的小伙伴暗暗窃喜,心里想这还不简单,但是今天我们不是老生常谈“数据-分列”,而是着重普及使用函数的方法实现数据的分列


如下图所示:

A列为一列名称,每个单元格中的数据都是由一些数字和若干相同的分隔符“/”组合而成的。现在我们想要以分隔符“/”来将数据进行分列操作,结果显示在B~E列中。

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_函数返回


下面则是老方法,使用【数据-分列】,根据【分隔符号】:“/”,进行快速的分列,方法想必大家已经用的滚瓜烂熟了。具体看下面动图,不再做过多的文字阐述。


用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_分隔符_02



2解题思路

那么用函数替代“分列”,这个Excel使用频率最高的功能到底如何使用呢?接下来我们就分步骤来讲解一下这个嵌套函数


用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_数据_03

第一步:

首先使用REPT函数产生8个相同的符号“/”,在B2单元格输入公式:

=REPT("/",8)

效果如下面动图所示,每个单元格都会生成8个相同的“/”


为什么是8个“/”呢?这与我们后面要使用COLUMN函数MID函数提取有关。其实这里我们完全可以用一个相对大的(或者极大的)数字来代替,而它的上限我们可以根据需要分列的各个单元格数据中,最后一个出现的分隔符“/”距离首个字符最大的位置确定。本例中A4单元格中的最后一个出现的分隔符“/”距离它的首字符位置数为8,所以这个上限我们用8就完全够用了。

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_数据_04

第二步:

SUBSTITUTE函数将A列中的分隔符“/”用第一步中函数REPT("/",8)产生的8个相同符号“/”替换掉,将B2单元格中的公式修改完善为

=SUBSTITUTE($A2,"/",REPT("/",8))

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_分隔符_05

由于公式输入完成后,单元格列宽比较小,公式显示不全,我们将列宽增加至公式完全显示出来为止,观察一下公式返回结果的特点,即最初的分隔符“/”变成了“////////”,即8个斜杠。

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_分隔符_06


第三步:

COLUMN(A1)*8-7计算每段数字第一个字的位置,作为MID函数第2参数。如本例中,我们分别从函数返回值1*8-7,2*8-7,3*8-7,4*8-7,位置处开始提取(即从1,9,17,25位置处开始提取)。


用MID函数提取每段8个字符,作为MID函数第3参数将B2单元格中的公式修改完善为

=MID(SUBSTITUTE($A2,"/",REPT("/",8)),COLUMN(A1)*8-7,8)

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_函数返回_07

我们观察一下函数返回结果:

发现每个单元格中分列出来的数据大致已经完成了最终分列效果,只是还在分列出来的每段数字前面或后面存在若干“/”。这就是为什么我们在第一步函数中REPT("/",8)8个“/”来确定了,并且分别从COLUMN(A1)*8-7起始位置处分别进行8个字符的提取,就是为了达到这种效果

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_分隔符_08


第四步:

最后我们只需要将B~E列每个单元格分列出来的数据中的“/”,替换为空值就行了,效果就是删除多余的“/”。


将B2单元格中的公式修改完善为:

=SUBSTITUTE(MID(SUBSTITUTE($A2,"/",REPT("/",8)),COLUMN(A1)*8-7,8),"/","")

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_数据_09


如下图所示:

如果我们直接按照单个数字,即单个字符数量进行分列显示,就更简单了。

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_函数返回_10


我们在B2单元格输入函数公式:

=MID($A2,COLUMN(A1),1)


公式向右复制时,COLUMN(A1)函数部分将依次生成“1,2,3...”递增的自然数序列,作为MID函数第二参数,即函数提取的起始位置。MID函数在B~E列依次提取A2单元格中的第1~4个字符。

用函数替代“分列”,这个Excel使用频率最高的功能还能这样耍!_函数返回_11


标签:REPT,函数,分列,COLUMN,单元格,Excel,MID,替代
From: https://blog.51cto.com/u_15825298/7828697

相关文章

  • python_批量处理excel文件
    情况pipinstallopenpyxlpipinstallxlrd数据Excel文件的格式为xls和xlsx,pandas读取excel文件需要安装依赖库xlrd和openpyxl。!注意:当xlrd>=2.0时,只支持xls格式,不再支持xlsx。数据代码importpandasaspdimportosimportjsonif__name__=="__main__":e......
  • Spring Boot + EasyExcel 导入导出,好用到爆,可以扔掉 POI 了
    1、EasyExcelEasyExcel是阿里巴巴开源poi插件之一,主要解决了poi框架使用复杂,sax解析模式不容易操作,数据量大起来容易OOM,解决了POI并发造成的报错。主要解决方式:通过解压文件的方式加载,一行一行的加载,并且抛弃样式字体等不重要的数据,降低内存的占用。EasyExcel优势注解式自定义操作......
  • Excel 中使用数据透视图进行数据可视化
     使用数据透视表(PivotTable)是在Excel中进行数据可视化的强大工具。下面将提供详细的步骤来使用数据透视表进行数据可视化。**步骤一:准备数据**首先,确保你有一个包含所需数据的Excel表格。数据应该按照一定的结构和格式组织,例如,每列是一个特定的字段,每行是一个数据记录。**步......
  • excel 导出 The maximum length of cell contents (text) is 32767 characters Excel
    excel导出Themaximumlengthofcellcontents(text)is32767characters导出excel功能,报错。错误日志提示::Themaximumlengthofcellcontents(text)is32767characters调查后,poi会有单元格最大长度校验超过32767会报错。需求调研:调研发现,excel和csv文件本身存在......
  • 炫酷转换:Java实现Excel转换为图片的方法
    摘要:本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。前言在实际开发过程中,经常会有这样的需求:将Excel表格或特定区域转换为图片,以便在其他软件中使用。而在Java开发中,借助于报表插件可以轻松地将工作......
  • # yyds干货盘点 # 盘点一个Python自动化办公Excel数据填充实战案例(番外篇)
    大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Python自动化办公的问题,一起来看看吧。上一篇【论草莓如何成为冻干莓】大佬给出了两个方法,这一篇文章,一起来围观粉丝自己在实际运行过程中所遇到的问题。二、实现过程这里是【瑜亮老师】亲测代码是无误了,肯......
  • Java 导出Excel根据单元格内容计算并设置列宽度、行高
    话不多说,上代码:importorg.apache.poi.ss.usermodel.*;importorg.apache.poi.ss.util.CellRangeAddress;importjava.util.HashMap;importjava.util.Map;importjava.util.Objects;/***根据单元格内容计算并设置列宽度、行高*/publicclassExcelUtil{//......
  • 导出excel文件总结
    使用alibaba的easyExcel一定要给要导出的类加注解,例:@ExcelProperty(value="文件传输结果(1=成功,0=失败,2=未传输)")导出的excel文件如果是只有属性没有值,查看自己的查询条件是否由默认值影响了异步导出,先确定好list是否为0,再返回成功如果导出的文件卡住了,也没有异......
  • Python自动筛选、删除Excel不处于给定区间的数据
      本文介绍基于Python语言,读取Excel表格文件,基于我们给定的规则,对其中的数据加以筛选,将不在指定数据范围内的数据剔除,保留符合我们需要的数据的方法。  首先,我们来明确一下本文的具体需求。现有一个Excel表格文件(在本文中我们就以.csv格式的文件为例),如下图所示。  其中,Exc......
  • # yyds干货盘点 #盘点一个Python自动化办公Excel数据填充实战案例(下篇)
    大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Python自动化办公的问题,一起来看看吧。上一篇【论草莓如何成为冻干莓】大佬给出的方法太深奥了,粉丝没有看懂,这一篇文章,一起来围观大佬在粉丝的代码基础上进行修改出正确的代码。二、实现过程这里是【论草莓......