如果你的工作簿中的数据如下图1所示。 图1 而你想把它们转换成如下图2所示。 图2 你可以使用多种方法,包括:使用VBA,创建数组公式,编写多个公式,等等。...图3 第2步:创建引用公式 在单元格E4至G4中创建单元格引用,如下图4所示代表想要看到的单元格中的数据。...图6 第5步:创建整个引用列表 现在,我们已经建立了Excel的工作模式,选择所有引用单元格(E4:G5),单击并按住填充系列手柄并向下拖动,生成一个列表,该列表超过了15行,以便稍后扩展列表。...图9 第7步:进一步完善转换数据列表 注意到上图9中转换后的数据列表中有很多数字0,这是为了我们在原始数据后面添加数据时,转换后的数据列表会自动更新。...图11 此时,当你在原始数据中添加新数据时,列表会自动更新,如下图12所示。 图12
假设我们要把 emp 表中的 ename、job 和 sal 字段的值整合到一列中,每个员工的数据(按照 ename -> job -> sal 的顺序展示)是紧挨在一块,员工之间使用空行隔开。...KING PRESIDENT 5000 (NULL) MILLER CLERK 1300 (NULL) 解决方案 将多列的数据整合到一列展示可以使用...使用 case when 条件1成立 then ename when 条件2成立 then job when 条件3成立 then sal end 可以将多列的数据放到一列中展示,一行数据过 case...when 转换后最多只会出来一个列的值,要使得同一个员工的数据能依次满足 case when 的条件,就需要复制多份数据,有多个条件就要生成多少份数据。...使用笛卡尔积可以"复制"出多份数据,再对这些相同的数据编号(1-4),编号就作为 case when 的判断条件。
在《Excel实战技巧109:快速整理一列数据拆分成多列》中,我们使用一种巧妙的思路解决了将一列数据拆分成多列的问题。本文介绍使用公式实现的方法。 示例工作簿中的数据如下图1所示。...在单元格E4中输入数组公式: =INDEX(A3:A29,ROWS(E4:E4)+(COUNTA(E3:G3)-1)*(ROWS(E4:E4)-1)+COLUMNS(E3:E3)-1) 向右拖至列G,向下拖至行...10,使数据全部显示。...公式中: A3:A29,是列A中原数据列表。 ROWS(E4:E4),统计指定区域的行数,区域通过锁定第一个引用并保留第二个引用为相对引用来扩展。...COLUMNS(E3:E3),统计指定区域的列数。区域通过锁定第一个引用并保留第二个引用为相对引用来扩展。当公式向右拉时,列数将增加(1,然后是 2,3,等等……)。
背景 我们平常使用excel的时候,都是选中一列,然后直接更改它的格式,但是这种方式并不能彻底改变已有数据的原格式,如下图中的5592689这一个CELL中的数据,尽管我们将整个列都更改为文本类型,但实际上它这个数据仍然是数值类型...,在很多场景下不能满足我们的需求,如数据库在导入Excel表格时,表格中的列数据需要文本形式,如果不是文本形式,导入的数据在数据库中会出现错误(不是想要的数据,如789 数据库中为789.0)。...数据分列 如何真正的将整列数据都更改为文本格式,我们就需要用的数据分列的功能。...第一步:选中要修改的列,点击上方数据,找分列后点击分列 第二步:点击分列 第三步:点击下一步 第四步:点击下一步,选择文本 第五步:确认之后,检查数据,会发现数字那一个CELL的左上角有一个小箭头
问题描述:已有Excel文件,其中包含5列数据,要求在第3列前插入一列数据,保存为新文件。 参考代码: ? 运行结果: ?
- 问题 - 怎么将这个多行多列的数据 变成一列?...- 1 - 不需保持原排序 选中所有列 逆透视,一步搞定 - 2 - 保持原排序:操作法一 思路直接,为保排序,操作麻烦 2.1 添加索引列 2.2 替换null值,避免逆透视时行丢失,后续无法排序...2.3 逆透视其他列 2.4 再添加索引列 2.5 对索引列取模(取模时输入参数为源表的列数,如3) 2.6 修改公式中的取模参数,使能适应增加列数的动态变化 2.7 再排序并删列 2.8...筛选掉原替换null的行 - 3 - 保持排序:操作法二 先转置,行标丢失,新列名可排序 有时候,换个思路,问题简单很多 3.1 转置 3.2 添加索引列 3.3 逆透视 3.4 删列 -...4 - 公式一步法 用Table.ToColumns把表分成列 用List.Combine将多列追加成一列 用List.Select去除其中的null值
Excel技巧:Excel如何“提取”一列中红色单元格的数据? ? 场景:财务、HR、采购、商务、后勤部需要数据整理的办公人士。 问题:Excel如何“提取”一列中红色单元格的数据?...具体操作方法如下:第一步:进行颜色排序 将鼠标放置在数据区的任意单元格,单击“排序”按钮(下图1处),对下列表中“型号”列进行“单元格颜色”按红色进行排序。(下图3处) ?...第二步:复制红色单元格数据 将红色单元格的数据复制到D列。黏贴时可以选择“选择性黏贴—值”。效果如下: ? 是不是很快搞定了客户朋友的问题。但这样有个问题,破坏了数据原有的顺序。这时候怎么办呢?...补救步骤:增加辅助列 排序前,新增一列“序号”列。 ? 按颜色排序,复制出数据后,序号的顺序被打乱。 ? 第三步:按序号在升序排序。...总结:辅助列是Excel中常见的解决问题的方法和思路。而序号是强烈推荐大家工作添加的玩意。标识数据表的唯一性。当然这个案例有个问题,就是如果数据是更新的。
在《Excel公式技巧72:获取一列中单元格内容的最大长度》中,我们使用一个简单的数组公式: =MAX(LEN(B3:B12)) 获取一列中单元格内容最长的文本长度值。...我们如何使用公式获取长度最长的文本数据值?有了前面的基础后,这不难实现。...;5;12;6;3;6;1;3},0) 得到: 5 代入INDEX函数中,得到: =INDEX(B3:B12,5) 得到内容最长的单元格B7中的值: excelperfect 如果将单元格区域命名为“数据
问题场景:需要将下列的交期一列的数据格式更改成2019/05/10 存货编码 尺寸 数量 交期 0 K10Y0190000X B140 200 2019-05-10 00:00:00...读取数据 df=pd.DataFrame(pd.read_excel(‘C:\\Users\\yys\\Desktop\\请购单.xlsx’)) 2....思路:将此列数据提取出来,存为列表,再更改格式,再放回表格中 #for循环选出需要数据,存为列表 t_list=[] for i in df['交期']: i=str(i) t1=time.strptime...输出至新的文件 df4.to_excel(‘E:\\yys\\请购单_new.xlsx’) 数据已经更改成功; 存货编码 尺寸 数量 交货日期 0 K10Y0190000X B140...2019/06/30 9 K10B02400123 B120 100 2019/06/20 10 K10B02400123 B140 100 2019/06/20 补充知识:python 在excel
excelperfect Q:数据放置在列A中,我要得到这些数据中任意3个数据的所有可能组合。如下图1所示,列A中存放了5个数据,要得到这5个数据中任意3个数据的所有可能组合,如列B中所示。...Dim n AsLong Dim vElements As Variant Dim lRow As Long Dim vResult As Variant '要组合的数据在当前工作表的列...A Set rng =Range("A1", Range("A1").End(xlDown)) '设置每个组合需要的数据个数 n = 3 '在数组中存储要组合的数据...Then lRow = lRow + 1 Range("B" & lRow) = Join(vResult, ", ") '每组组合放置在多列中...如果将代码中注释掉的代码恢复,也就是将组合结果放置在多列中,运行后的结果如下图2所示。 ? 图2
学习Excel技术,关注微信公众号: excelperfect 在我的工作表中,同一行是某学生测试项目和课外兴趣班的全部信息,如下图1所示。 ?...图1:在工作表“InputData”列A至列C中存储学生一般信息,列D至列列W存储着学生测试项目信息。测试项目信息分为“测试项目、测试日期、分数、等级”列,共重复5次(即有5个测试项目)。 ?...图2:在工作表“InputData”列X至列AI存储着学生课外兴趣班信息。课外兴趣班信息分为“课外兴趣班、频次、持续时间、效果”列,共重复了3次。...现在,要将工作表“InputData”同一行中的数据转换成多行数据,并存储到工作表“OutputData”中,如下图3所示。 ? 图3:转换成多行数据的结果。...'依次将相应数据存放在数组中 With stu(i) k = 4 '存储前3列数据 .info
regex=True) # 替换为0 df["year"] = df["year"].replace(r'\D+','0',regex=True) 上面的代码会把原始的数字也全部替换掉,如果想保留原始行的数据列的话
> 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死。...后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 前言 Excel 是奇葩不规范数据的重灾区,这主要是因为他有高度的灵活性,今天来看看一个多列堆叠问题。...案例1 公司一次线下促销活动,让运营部的小伙伴用 Excel 简单记录了商品数量,但是他们却把3天的记录分别记录在不同的列上: 你心中期望的数据是这样子的: 现在你要做各种统计数据,3天的数据手工完成当然没问题...现在来看看,在 pandas 中怎么简单转换成规范的2列数据: - 第一句主要是为了最后结果的标题与原数据标题一致而已 - 关键是第二句,这里直接使用 numpy 的 reshape 方法,即可完成需求...- .reshape(-1,2) ,其中的2就是2列,而 -1 是让 numpy 你根据数据来计算最终的行数 - 第三句,只是把结果的数组变为一个 DataFrame - 至于最后的 dropna ,
小勤:大海,现在有一堆格式化的表单,像这样的: 怎么转成下面这样规范的数据明细啊?不然没法做数据分析呢。 大海:这种填报格式的申请表、登记表等等的要转为规范的数据明细还真是经常有的事。...以前我写过一个可配置的VBA,就是自己定义好哪个单元格的内容转到明细表里的哪一列,比如配置表: 然后运行程序,选择需要的文件统一导入到一个文件中: 小勤:这种可配置的导入程序很好啊!...大海:其实思路差不多,就是先找到源数据表(格式表)需要导入的数据与目标表(规范明细表)的关系,然后把源表的数据放到目标表里。...Step-01:从工作簿获取数据到PQ Step-02:为避免数据类型转换错误,删掉PQ自动添加的“更改的类型”步骤 结果如下: 显然,其中有很多合并单元格的内容被识别成了null,...(列表嵌套),具体语法如下: #table({标题}, {{第1行数据}, {第2行数据}, …}) 再简化一点儿用具体数据举个小栗子: #table( {"姓名","年龄"},
大海:有了《PQ-M及函数:结合前期案例,学习自定义函数》的基础,现在可以开始多个格式化表单数据的转换汇总了。 小勤:嗯。...我刚试了一下,好简单,原来那个《批量汇总多Excel表格 | 格式化表单(如简历)数据汇总1:单表转换》里读数据的代码是这样的: 只要加上自定义函数名和将s用作参数就好了,你看: 大海:嗯,不错。...Column6]{1},s[Column2]{2}, s[Column4]{2},s[Column6]{2},s[Column2]{3}}} ) Step-04:添加自定义列,...用自定义函数实现表格的转换 Step-05:展开自定义列 Step-06:删掉不必要的列 小勤:搞定啦。...小勤:不过我在想怎么样实现配置性的操作方法,就是想导入哪些数据,用户就填一个配置表,就像你在《批量汇总多Excel表格 | 格式化表单(如简历)数据汇总1:单表转换》里提到的用VBA做的那个类似效果。
本文通过Excel的新功能Power Query结合数据有效性功能,实现最简单实用的去掉重复数据并在表格中下拉显示的效果。...传统的Excel方法里,关于去掉重复数据有删重复项操作法、公式法、数透法等等,但这些方法都存在一些问题: 要么如公式法会无法确定最终返回的个数 要么如删重复法每次需要手工重新操作 因此,很难解决将相应的删重复后的数据在表格中下拉显示的数据有效性问题...一、使用Power Quey去除重复项,同时生成相应的“名称” 1、从表格新建查询,将数据放入Power Query 2、删除不需要的列 3、删除重复项 4、数据返回Excel中(注意先修改个好用的名称...) 这时,在Excel中将存在表格及名称“产品”,如下图所示: 二、对名称“产品”进行引用,生成数据有效性下拉菜单 1、使用Indirect函数创建数据验证序列 2、为避免不能录入非清单中的数据...,设置“出错警告”: 通过以上简单的几个步骤,即实现了在Excel中获得一列数据的枚举数据,即去掉重复数据,并在表格中下拉显示的效果。
返回 表——包含已经删除过滤器后的一列或多列的表。 C. 注意事项 通常和filter组合,如果是列名需要是filter处理的列名 1个参数只能写1个条件,列和表不能同时出现。...返回 表——包含已经删除过滤器后的一列或多列的表。 C. 注意事项 第1参数是表,第2参数是列,而All函数的第1参数是表或者列。...分列数据的方法比较 如何用Power Query处理Excel中解决不了的分列 Power Query中如何把多列数据合并? Power Query中如何把多列数据合并?...升级篇 Power Query中单列数据按需转多列 在Power Query中如何进行类似"*"的模糊匹配查找? 如何在Power Query中达到函数Vlookup的效果?...(Text.Format,Text.PadStart,Text.PadEnd,Text.Insert) 如何批量对每一行或者每一列进行排序?
通常,当你将数据库中的数据进行转储时,这些正在处理的文本数据将会保留字符串内部作为词与词之间分隔的空格。并且,如果你对这些内容不进行处理,后面的分析中将产生很多麻烦。 ? 6....EXCEL的数据透视表将会帮你轻松的找到这些问题的答案。数据透视表是一款用于汇总如:计数,求平均值,求和,以及其他依据相关选择进行特征计算的功能。...你要做的就是把他们放在选项板的过滤器中,就可以看到在左边生成相应的数据透视表。 ? 从上图可以看到,我们将“Region”放入行,“Productid”放入列中,“Premium”放入值中。...按照下列步骤操作可以删除重复值:选择所需数据-转到数据面板-删除重复值 ? 2.文本分列:假设你的数据存储在一列中,如下图所示: ? 如上如所示,我们可以看到A列中单元格内容被“;”所区分。...如果我们希望按照宽度分列,例如:前四个字符为第一列,第五到第十个字符为第二列,则可以选择按固定宽度分列。 3.点击下一步—点击“分号”,然后下一步,然后点击完成。 ?
领取专属 10元无门槛券
手把手带您无忧上云