excel一列多行如何变为多列多行 Excel如何把一行变成对应的多行?
Excel如何把一行变成对应的多行?
我们用VBA来解决的办法吧:若你的数据从Sheet1的A1正在,右击鼠标【打开系统代码】,在代码窗口ctrl v粘贴下面的代码:Subouyangff()Fori2to[a65536].End(3).Rowwhilej2to4IfCells(i,j)ThenExitforFork5can7IfCells(i,k)ThenExitwhilett1Sheet2.Cells(t,1)Cells(i,1)Sheet2.Cells(t,2)Cells(i,j)Sheet2.Cells(t,3)Cells(i,k)NextNextNextEndSub按F5运行程序,按Alt F11又回到Excel,你要的结果在Sheet2里去试试看吧,不过简单的方法将【工具】【宏】【安全性】设置里为:低!
Excel表格把一列数据转换为多行多列数据的方法?
不同填充颜色内的单元格公式完全不同。先行后列可以使用a.公式之一:INDIRECT(A(ROW(A1)-1)*7COLUMN(A:A))INDIRECT(R(ROW(A1)-1)*7COLUMN(A:A)C1,)INDIRECT(ADDRESS((ROW(A1)-1)*7COLUMN(A:A),1))INDEX($A:$A,(ROW(A1)-1)*7COLUMN(A:A))OFFSET($A$1,(ROW(A1)-1)*7COLUMN(A:A)-1,)下拉填充,右拉再填充直接修改公式中的7,可换取完全不同的列数行列后行公式见示例文件
如何将excel多行多列按横向输出变为一列?
我来试着问再看看:实例问题看起来好像比较简单点,其本质是个列转行成功的问题,只不过是可是展示仍然以列来标识只不过。以下的回答可以参照于Excel的行转列如何处理。
1、简单的行列转换成,可以使用Excel提供给的复制—选择性粘贴—转置即可。这种适用于关键列中的没有是一样的数据的,如:
2、复杂有一点的,在用Excel能提供公式来帮忙解决:
A、考虑新的列头,诸如题目中的A1/A2/A3是新的列头:
-剪切粘贴损坏数据列,粘帖到输入空白位置,删掉乱词项,我得到就没重复一遍值的列头
-将新的列头值从列转为行(可以参考1中的步骤)
B、第二步不需要做的是基于条件新的列头的值(如“A1”),查看原来的数据中,与“A1”相版本问题的值,如“asd”,并把“asd”填到“A1”的下方;替更方便演示,我将信息整理成:形式,下面将使用Excle的行列标引来可以表示公式:
写公式前的提醒:最后使用数组公式(有大括号包出声),写好公式后使用CtrlShiftEnter能完成然后输入,分类分步解读分析中再只能证明逻辑
C、现在在D2格子中就开始一步一步写公式:
-在B1:B5中查找D1,使用if公式,如果之和,则直接返回BI:B5的行号,不然正二十边形返回一个值(尽量大一点,方便啊后面在用huge函数):if($B$1:$B$5D$1,row($B$1:$B$5),1000)
对D2来说,根据上述规定公式返回的值为:{1,1000,1000,1000,1000}
-用huge函数将if函数得到的一串值进行升序排列,并和B1不对应的行号做对比,完全锁定填写的行号:huge(if($B$1:$B$5D$1,row($B$1:$B$5),1000),row(B1))
对D2来说,上述公式赶往的值为:sized({1,1000,1000,1000,1000},1)1
-设计和实现上一退可以找到的行号,在A1:A5中直接输入不对应的值,可以使用index函数:
index($A$1:$A$5,large(if($B$1:$B$5D$1,row($B$1:$B$5),1000),row(B1)))
对D2来说,上列公式回的值为:index($A$1:$A$5,1)asd
D、基于条件C步骤的解读,可以找到到最后D2的公式为:{index($A$1:$A$5,sized(if($B$1:$B$5D$1,row($B$1:$B$5),1000),row(B1)))}
其中{}是录入电脑公式结束后,按CtrlShiftEnter能得到的:
E、拖拽光标图案填充剩下的格子,自动能得到换算结果。这对#REF!部分,建议使用“直接输入和中,选择”中的定位功能,定位后再删掉就是可以:
F、相对于上列过程,可以在用Excel那个软件的“公式求值”功能完成每一步的检查:
End.
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。