多列中的范围数据转换为单行vba

问题描述:

我试图将多个列中的多个数据转置为新工作表中的单个行。我原来的数据将显示如下多列中的范围数据转换为单行vba

之前

Col1 | Col2 | Col3 
    1 | 2 | 3 
    1 | 2 | 3 
    1 | 2 | 3 

Row1 1 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 3

有人可以帮助我VBA代码,可以从原来的工作调换到新worksheet.Thank!

+1

请发表您已经尝试过的内容。这不是一个“自由职业者发现者”类型的网站。 –

这假定您的数据位于名为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)))),"") 

然后复制到右边。

enter image description here