当你遇到图中案例这样的工作情况,需要将一列有规律的数据变成两列展示,你会怎么来实现呢?

现在,我们来讲解2个解决方法。

一、用颜色筛选法

首先,我们将所有电话的单元格用颜色填充。

由于全部是隔行为电话,因此可以用条件格式里的公式来选取这些单元格。

选中B列,点击“菜单栏-开始-条件格式-新建规则”,在公示栏里输入公式

=(mod(row(a1),2)=1)

mod函数是求余数,即将所有B列单元格的行数(B1单元格行号为1、B2单元格行号为2……)除以2,余数为1的单元格填充黄色,也就是所有奇数行填充黄色。

设置完之后的效果如图,包括B1单元格也由蓝色填充变为了黄色填充。

有了颜色填充之后,我们再用筛选功能里的颜色筛选就可以了。

点击“菜单栏-开始-排序和筛选-筛选”,B1单元格就多了筛选按钮。

点击筛选按钮,选择“按颜色筛选”,里面有“黄色填充、无填充”两个选项,先选择无填充,就可以将姓名先筛选出来。

筛选结果出来后,复制这些姓名内容,在D1单元格点击右键,选择粘贴选项里的第2个,也就是有123图标的,代表着只粘贴值,去掉所有格式。

这样,姓名首先被筛选复制出来了。

同理,我们再去筛选黄色填充,复制到E列,电话也被筛选复制出来了。

这个时候,会发现数据少了一些,不完整?这是正常的。因为筛选的时候有些行被隐藏了,不用担心。

点击筛选按钮,选择“从姓名电话中清除筛选”,去除所有筛选效果。

这个时候,D列、E列的数据就全部完整展示出来了。

接下来,点击“菜单栏-开始-条件格式-清除规则-清除整个工作表规则”,将B列恢复到初始状态。

最终,再对D列、E列调整下格式,所有数据就变成了两列展示效果。

二、用函数公式法

第一种方法操作的步骤比较多,要想一步到位,就用函数公式最方便。

选中D列区域(D2开始,和B列一样长度,或者超出B列长度,不能少于B列长度),在编辑栏里输入数组公式:

=IFERROR(INDEX(B:B,SMALL(IF(MOD(ROW(),2)=0,ROW()),ROW(A1:A50))),"")

公式第1部分

IF(MOD(ROW(),2)=0,ROW())

表示用B列单元格的行号除以2,如果余数为0(即刚好整除,也就是所有偶数行),返回行号;如果余数不为0(即所有奇数行),返回默认错误值。

公式第2部分

SMALL(公式第1部分,ROW(A1:A50))

表示用small函数将刚才返回的行号全部排到前面来,错误值放到后面去。后面的row(a1:a50)代表总共对50个数进行取值,这个50一定要大于B列所选单元格的数量,否则数据显示不完整。

公式第3部分

INDEX(B:B,公式第2部分)

表示用index函数在B列,将这样行号对应单元格的值取出来,也就是取出所有偶数行里的内容,即所有姓名。

公式第4部分

=IFERROR(公式第3部分,"")

表示用ifferror函数将错误值部分全部显示为空格。

由于是数组公式,要用Ctrl+Shift+Enter三键确认,确认后D列就直接显示全部的姓名了。

有了D列的姓名,再用offset函数进行获取对应的电话即可。

E2单元格公式为

=IFERROR(OFFSET($B$1,MATCH(D2,B:B,0),0),"")

先用match函数在B列里找到姓名对应的位置,然后用offset函数去取出对应的电话单元格,再用iferror函数过滤掉错误值。

将公式下拉填充即可。

另外,如果大家掌握了INDIRECT函数,会发现用INDIRECT函数最简单,直接一个公式下拉就可以了。

D2单元格公式为

=IF(INDIRECT("b"&ROW(B1)*2)=0,"",INDIRECT("b"&ROW(B1)*2))

公式第1部分

INDIRECT("b"&ROW(B1)*2)

用indirect函数直接取B列所有偶数行的内容。

公式第2部分

=IF(公式第1部分=0,"",公式第1部分)

用if做个判断,如果结果为0,就显示空单元格;结果不为0,就正常显示结果。这是因为多余的单元格为显示0,我们用if函数来过滤掉这些0的值。

然后下拉填充所有D列。

同理,E2单元格公式为:

=IF(INDIRECT("b"&ROW(B1)*2+1)=0,"",INDIRECT("b"&ROW(B1)*2+1))

只要在公式里面+1,就变为姓名下面一行了,也就是对应的电话。

另外,过滤掉excel单元格0的显示,还可以直接系统设置里禁用。

点击“菜单栏-文件-选项-高级”,“此工作表的工作选项”里,默认是勾选了“在具有零值的单元格中显示零”,去掉这个勾选,刚才就不需要用if函数来判断0进行过滤了。

总结:这个案例还有其他的方法也可以实现,我们这里主要是给大家提供思路,拓展excel综合应用的办法。

更多相关内容,可以查看专栏课程《Excel天天训练营》以及免费圈子“职场交流圈”。

取一列_excel工作案例:如何快速实现一列变两列?相关推荐

  1. 【蓝桥杯05】:小明每天都要练功,练功中的重要—项是梅花桩。小明练功的梅花桩排列成n行m列,相邻两行的距离为1,相邻两列的距离也为;小明想知道,在不掉下梅花桩的情况下,自己最少要多少步可以移动到目标。

    问题描述: 小明每天都要练功,练功中的重要一项是梅花桩.         小明练功的梅花桩排列成n行m列,相邻两行的距离为1,相邻两列的距离也为1.         小明站在第1行第1列上,他要走到第 ...

  2. 如何用python计算excel两行之间的差值_excel表格求两列数据差值-怎样在EXCEL表格中求两列数的差?...

    怎样在EXCEL表格中求两列数的差? 1.双击打开需行求差的Excel表格,Excel表格. 2.在进入Excel表格后,使用鼠标需差的单元格,先选中其中一行即可. 3.在选中一行后,在单元格内输入& ...

  3. mysql表的一列拆分成两列_将float值拆分成MySQL表的两列?

    要将float值分成两列,第一列将有一个十进制前的值.第二列将在小数点后有一个值.为此,您可以将SUBSTRING_INDEX()与一起使用CAST().让我们首先创建一个表-mysql> cr ...

  4. 两列模糊对比 oracle,excel 模糊比对两列数据并将比对结果显示出来 | excel表格两列数据模糊对比...

    excel2016如何将两列完全不一样的数据进行模糊对比? B2单元格输入公式=IF(ISNUMBER(FIND(LEFT(A2,3),PHONETIC(G$2:G$8))),"" ...

  5. word如何弄成两竖列_word上诗歌怎么变两列

    word文档怎么变成两列 http://jingyan. baidu. com/article/f3e34a128505b7f5eb653598. html word里一列文字变成两列文字,如何实现? ...

  6. python两列时间间隔计算器_在python中有效地比较两列中的每对日期

    我有一个包含开始日期列和结束日期列的数据框.我想通过确保开始日期早于结束日期(即开始日期&lt:结束日期)来检查日期的完整性.我有超过14000个观察结果要运行.在 我有以下形式的数据:Sta ...

  7. xlsx表格怎么筛选重复数据_excel表格如何筛选重复数据 在Excel表格的两列数据中提取不重复值的四种方法...

    excel表格如何筛选重复数据 在Excel表格的两列数据中提取不重复值的四种方法,最近到了季度汇报的时候,掌握一手excel技能在此刻显得多么重要,为了是你的excel看起来更高大上,今天教大家设置 ...

  8. countif函数比较两列不同_Excel中COUNTIF函数的五种必学使用技巧

    原标题:Excel中COUNTIF函数的五种必学使用技巧 院长大大丨图文 教程基于Excel 2016 提起COUNTIF函数,各位小伙伴都知道它的含义是条件计数.但这个简单的计数函数,却可以引申出很 ...

  9. R语言筛选两列中元素相同的重复数据

    思想:将读取的数据当做数据库中的数据表,读取的数据放置到数据内存中临时存储,以SQL语句对数据进行筛选,得出想要的数据内容. 数据情况 筛选V2和V3两列中,元素的重复次数超过2次以上的数据,其中2和 ...

最新文章

  1. 数据可视化与数据预处理
  2. 31 天重构学习笔记29. 去除中间人对象
  3. docker学习(一)ubuntu上安装docker
  4. SQL实战篇:SQL解决连续X天的问题
  5. vue 微信支付的坑_vue_模式下h5微信支付
  6. java treemap lastkey,java.util.TreeMap.higherKey()方法实例
  7. 91年转行前端开发,是不是不该转,有啥风险?
  8. C# WinForm 判断程序是否已经在运行,且只允许运行一个实例,附源码
  9. L1-055 谁是赢家 (10 分)—团体程序设计天梯赛
  10. 资金流学习 - 关注点
  11. unix编程实训教程之 more(觉醒篇一 Begin)
  12. MySQL分页查询的5种方法
  13. 真格量化常见报错信息和Debug方法
  14. cad缩放_CAD中的AL是什么指令? 怎么操作哦
  15. php中exec的用法,php exec用法详解
  16. 前端eslint+prettier+lint-staged配置
  17. python定义整数_Python | 程序定义一个整数值并打印
  18. 计算机管理usb出现问号,USB设备全部都是问号,求助?
  19. python基础------文件读写操作、re、os和sys模块
  20. 【GANs】C-RNN-GAN

热门文章

  1. Linux关闭selinux
  2. lucene学习001
  3. ASP.NET MVC开发,编辑页面和添加页面基本相同,我们控制器 Add Edit是共用同一个View吗?...
  4. 035、Linux下Dmidecode查看硬件信息
  5. 2020年_Jsp Jstl 学习笔记
  6. reactjs定义组件:函数式组件
  7. Linux硬盘分区的格式化
  8. python字符串截取:截取yaml文件名后3个字符
  9. Scala import导包用法
  10. python3数据类型:String字符串