在Excel 2010中,将行数据分类到具有相同标题的列中

简而言之,我需要根据列标题将特定范围的行数据分类到正确的列中。 例如,如果有五列标记为A到E,并且在下面的行中的数据从A到E; 我需要所有的A在A列中,B列中的所有B等。例子开始数据:

例

它应该如何照顾sorting:

预期的结果

它也必须能够处理空单元的可能性。 例如; 如果第一个示例数据在第3行中没有B,那么数据不能移到左边,这样C就在B列中。

其他信息:通过手工交换450行是不可行的。

它也必须能够处理空单元的可能性。

考虑到上述情况。

非VBA的方式

插入足够的列,以便数据向右移动

在这里输入图像说明

接下来在第一行中,复制数据中的值

在这里输入图像说明

在单元格A2把这个公式

 =IF(COUNTIF($H$2:$L$2,A1)>0,A1,"") 

在这里输入图像说明

将公式复制到右侧

在这里输入图像说明

接下来从表格范围中删除“$”并将其添加到单元格A2中的公式中的标题,以便我们可以复制公式。 这是它的样子

 =IF(COUNTIF(H2:L2,$A$1)>0,$A$1,"") 

同样,你的B2公式看起来像这样

 =IF(COUNTIF(H2:L2,$B$1)>0,$B$1,"") 

改变它的rest

在这里输入图像说明

如何突出显示单元格A2:E2并将公式向下复制。

在这里输入图像说明

您的最终Sorted数据看起来像这样。

在这里输入图像说明

复制列A:E并在Col A:E本身上执行粘贴特殊值,以便将公式更改为值,然后删除Cols H:L