Excel vba中多列转置为单行的范围数据
我试图在新工作表中将多列中的多个数据转换为一行。我的原始数据如下所示 以前 Col1 | Col2 | Col3 1 | 2 | 3 1 | 2 | 3 1 | 2 | 3 Col1 | Col2 | Col3 1 | 2 | 3 1 | 2 | 3 1 | 2 | 3 之后 第1排1 | 1 | 1 | 2 | 2 | 3 | 3Excel vba中多列转置为单行的范围数据,excel,vba,transpose,Excel,Vba,Transpose,我试图在新工作表中将多列中的多个数据转换为一行。我的原始数据如下所示 以前 Col1 | Col2 | Col3 1 | 2 | 3 1 | 2 | 3 1 | 2 | 3 Col1 | Col2 | Col3 1 | 2 | 3 1 | 2 | 3 1 | 2 | 3 之后 第1排1 | 1 | 1 | 2 | 2 | 3 | 3 有人可以帮我用vba代码,可以从原来的工作表转换到新的工作表。谢谢 这假设您的数据位于名为d
有人可以帮我用vba代码,可以从原来的工作表转换到新的工作表。谢谢 这假设您的数据位于名为
data
的工作表中的A:C中。将其放入第一个单元格:
=IFERROR(IFERROR(INDEX(data!$A$1:INDEX(data!$A:$A,MATCH(1E+99,data!$A:$A)),COLUMN(A:A)),IFERROR(INDEX(data!$B$1:INDEX(data!$B:$B,MATCH(1E+99,data!$A:$A)),COLUMN(A:A)-COUNT(data!$A:$A)),INDEX(data!$C$1:INDEX(data!$C:$C,MATCH(1E+99,data!$A:$A)),COLUMN(A:A)-COUNT(data!$A:$B)))),"")
然后复制到右边
请发布您已经尝试过的内容。这不是一个“自由职业者”类型的网站。
=IFERROR(IFERROR(INDEX(data!$A$1:INDEX(data!$A:$A,MATCH(1E+99,data!$A:$A)),COLUMN(A:A)),IFERROR(INDEX(data!$B$1:INDEX(data!$B:$B,MATCH(1E+99,data!$A:$A)),COLUMN(A:A)-COUNT(data!$A:$A)),INDEX(data!$C$1:INDEX(data!$C:$C,MATCH(1E+99,data!$A:$A)),COLUMN(A:A)-COUNT(data!$A:$B)))),"")