excel 列里数据转置成行后,怎么能自动生成新行
我的第一行是A列是55,BCDE列分别是甲乙丙丁第二行是A列是56,BCDE列分别是戊己庚辛如图片的上半部分显示。现在求一方法,如何能达到:第一行的甲乙丙丁转置成为行的数...
我的第一行是 A列是55,BCDE列分别是甲乙丙丁
第二行是 A列是56,BCDE列分别是戊己庚辛
如图片的上半部分显示。
现在求一方法,如何能达到:
第一行的甲乙丙丁转置成为行的数据,并且自动插入到原来的第一行和第二行之间,且生成的这些新行的A列里也自动填写成他们原本的序列号55.如图片的下半部分显示。
急切想知道方法,因为有几千条数据等待料理,请达人们提供高效率的方法,以本人奖励积分上限,以表诚意。 展开
第二行是 A列是56,BCDE列分别是戊己庚辛
如图片的上半部分显示。
现在求一方法,如何能达到:
第一行的甲乙丙丁转置成为行的数据,并且自动插入到原来的第一行和第二行之间,且生成的这些新行的A列里也自动填写成他们原本的序列号55.如图片的下半部分显示。
急切想知道方法,因为有几千条数据等待料理,请达人们提供高效率的方法,以本人奖励积分上限,以表诚意。 展开
5个回答
展开全部
VB就不懂了,但想到一个“曲线”达到效果的方法提供参考,希望用的上。
先在C、D、E三列前各插入一列新列,然后把A列的内容都复制到这三列上,这时在第一行上的甲、乙、丙、丁前面都带上了“55”,第二行的则带上了“56”,如此类推。
如果你一定要根据甲、乙、丙、丁顺序排列(有可能是其他内容,但不能按要求正常排列的),可在这些内容前加个A、B、C、D,如原来的是“甲”可再在这一列前插入一新列,并全部输入一个“A”,再把这个“A”与“甲”合并变成“A甲”,其他一样,如“乙”就变成“B乙”,“丙”变成“C丙”,“丁”变成“D丁”(这样只为下一步操作中不会改变原来的排列顺序)。
跟着把这些内容每两列(数字列和内容列)全部复制到同一列上并以数字列为第一关键字,“A甲”这一列为第二关键列按“升序”进行排序,这时就会出现第一行“55”“A甲”,第二行“55”“B乙”......,基本按你的要求排列好了,只是多了些A、B、C、D,这时你只要选中这些内容,然后用查找替换把这些A、B、C、D都去除了,剩下的就是你要的了。不知道我的表达清楚不,希望你能看的明白。
先在C、D、E三列前各插入一列新列,然后把A列的内容都复制到这三列上,这时在第一行上的甲、乙、丙、丁前面都带上了“55”,第二行的则带上了“56”,如此类推。
如果你一定要根据甲、乙、丙、丁顺序排列(有可能是其他内容,但不能按要求正常排列的),可在这些内容前加个A、B、C、D,如原来的是“甲”可再在这一列前插入一新列,并全部输入一个“A”,再把这个“A”与“甲”合并变成“A甲”,其他一样,如“乙”就变成“B乙”,“丙”变成“C丙”,“丁”变成“D丁”(这样只为下一步操作中不会改变原来的排列顺序)。
跟着把这些内容每两列(数字列和内容列)全部复制到同一列上并以数字列为第一关键字,“A甲”这一列为第二关键列按“升序”进行排序,这时就会出现第一行“55”“A甲”,第二行“55”“B乙”......,基本按你的要求排列好了,只是多了些A、B、C、D,这时你只要选中这些内容,然后用查找替换把这些A、B、C、D都去除了,剩下的就是你要的了。不知道我的表达清楚不,希望你能看的明白。
展开全部
试下这个方法.先画一个按钮
然后中间输入
ActiveCell.Rows("1:1").EntireRow.Select
Selection.Insert Shift:=xlDown
Selection.Insert Shift:=xlDown
Selection.Insert Shift:=xlDown
ActiveCell.Offset(-1, 2).Range("A1").Select
Selection.Copy
ActiveCell.Offset(1, -1).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(-1, 2).Range("A1").Select
Application.CutCopyMode = False
Selection.Copy
ActiveCell.Offset(2, -2).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(-2, 3).Range("A1").Select
Application.CutCopyMode = False
Selection.Copy
ActiveCell.Offset(3, -3).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(2, 0).Rows("1:1").EntireRow.Select
之后返回表格选中第二行...这一步一定要..
如果基本能做到你那效果..再HI我吧..其它好办.
然后中间输入
ActiveCell.Rows("1:1").EntireRow.Select
Selection.Insert Shift:=xlDown
Selection.Insert Shift:=xlDown
Selection.Insert Shift:=xlDown
ActiveCell.Offset(-1, 2).Range("A1").Select
Selection.Copy
ActiveCell.Offset(1, -1).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(-1, 2).Range("A1").Select
Application.CutCopyMode = False
Selection.Copy
ActiveCell.Offset(2, -2).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(-2, 3).Range("A1").Select
Application.CutCopyMode = False
Selection.Copy
ActiveCell.Offset(3, -3).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(2, 0).Rows("1:1").EntireRow.Select
之后返回表格选中第二行...这一步一定要..
如果基本能做到你那效果..再HI我吧..其它好办.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
VB就不懂了,但想到一个“曲线”达到效果的方法提供参考,希望用的上。
先在C、D、E三列前各插入一列新列,然后把A列的内容都复制到这三列上,这时在第一行上的甲、乙、丙、丁前面都带上了“55”,第二行的则带上了“56”,如此类推。
如果你一定要根据甲、乙、丙、丁顺序排列(有可能是其他内容,但不能按要求正常排列的),可在这些内容前加个A、B、C、D,如原来的是“甲”可再在这一列前插入一新列,并全部输入一个“A”,再把这个“A”与“甲”合并变成“A甲”,其他一样,如“乙”就变成“B乙”,“丙”变成“C丙”,“丁”变成“D丁”(这样只为下一步操作中不会改变原来的排列顺序)。
跟着把这些内容每两列(数字列和内容列)全部复制到同一列上并以数字列为第一关键字,“A甲”这一列为第二关键列按“升序”进行排序,这时就会出现第一行“55”“A甲”,第二行“55”“B乙”......,基本按你的要求排列好了,只是多了些A、B、C、D,这时你只要选中这些内容,然后用查找替换把这些A、B、C、D都去除了,剩下的就是你要的了。不知道我的表达清楚不,希望你能看的明白。
先在C、D、E三列前各插入一列新列,然后把A列的内容都复制到这三列上,这时在第一行上的甲、乙、丙、丁前面都带上了“55”,第二行的则带上了“56”,如此类推。
如果你一定要根据甲、乙、丙、丁顺序排列(有可能是其他内容,但不能按要求正常排列的),可在这些内容前加个A、B、C、D,如原来的是“甲”可再在这一列前插入一新列,并全部输入一个“A”,再把这个“A”与“甲”合并变成“A甲”,其他一样,如“乙”就变成“B乙”,“丙”变成“C丙”,“丁”变成“D丁”(这样只为下一步操作中不会改变原来的排列顺序)。
跟着把这些内容每两列(数字列和内容列)全部复制到同一列上并以数字列为第一关键字,“A甲”这一列为第二关键列按“升序”进行排序,这时就会出现第一行“55”“A甲”,第二行“55”“B乙”......,基本按你的要求排列好了,只是多了些A、B、C、D,这时你只要选中这些内容,然后用查找替换把这些A、B、C、D都去除了,剩下的就是你要的了。不知道我的表达清楚不,希望你能看的明白。
参考资料: ch
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
g1=IF(MOD(ROW(),5)=0,INDIRECT("a"&ROW()/5*2),INDIRECT("a"&INT((ROW()-1)/5)*2+1))
向下拖
h1=IF(MOD(ROW(),5),IF(COLUMN()<>8,"",VLOOKUP($G1,$A:$E,COUNTIF(G$1:G1,$G1)+1)),VLOOKUP($G1,$A:$E,COLUMN()-6))
向右拖到k1,向下拖。
向下拖
h1=IF(MOD(ROW(),5),IF(COLUMN()<>8,"",VLOOKUP($G1,$A:$E,COUNTIF(G$1:G1,$G1)+1)),VLOOKUP($G1,$A:$E,COLUMN()-6))
向右拖到k1,向下拖。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
VBA可以实现的。可以hi我研究研究。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |