将列的子集转换为行,并将其余列保留在Excel VBA中
我有活动注册的数据,这些数据将以CSV文件的形式每周提交给我。为了简单起见,我对数据进行了简化,但基本思想是它将如下所示:将列的子集转换为行,并将其余列保留在Excel VBA中,excel,vba,Excel,Vba,我有活动注册的数据,这些数据将以CSV文件的形式每周提交给我。为了简单起见,我对数据进行了简化,但基本思想是它将如下所示: Team Name1 Name2 Name3 Total 1 a b c 10 2 d e f 20 3 g h i 30 4 j k l 40 5 m n o 50 6 p q r 60 7
Team Name1 Name2 Name3 Total
1 a b c 10
2 d e f 20
3 g h i 30
4 j k l 40
5 m n o 50
6 p q r 60
7 s t u 70
Team Name Total
1 a 10
1 b 10
1 c 10
2 d 20
2 e 20
2 f 20
3 g 30
3 h 30
3 i 30
4 j 40
4 k 40
4 l 40
5 m 50
5 n 50
5 o 50
6 p 60
6 q 60
6 r 60
7 s 70
7 t 70
7 u 70
每周,对于完整数据集,我需要能够将列Name1、Name2和name3转换为行,并保持所有其他列相同,以便如下所示:
Team Name1 Name2 Name3 Total
1 a b c 10
2 d e f 20
3 g h i 30
4 j k l 40
5 m n o 50
6 p q r 60
7 s t u 70
Team Name Total
1 a 10
1 b 10
1 c 10
2 d 20
2 e 20
2 f 20
3 g 30
3 h 30
3 i 30
4 j 40
4 k 40
4 l 40
5 m 50
5 n 50
5 o 50
6 p 60
6 q 60
6 r 60
7 s 70
7 t 70
7 u 70
- 最终格式需要在Excel文件中李>
- 这类任务的最佳方法是什么?Excel/VBA?进入
- 我不必将列名设置为最终格式(如果这增加了太多的复杂性,我可以自己添加这些列名)
谢谢您的帮助。我的第一个想法是访问,但如果这就是您所做的全部,您可以留在Excel中
这甚至可以在没有VBA的情况下完成——只需使用MATCH()的Excel公式(对于团队名称,返回Excel行)和INDEX()(给它MATCH()结果,它将返回NAME1、2或3或Total)。[SOLVED]一位朋友刚刚帮我编写了一个awk脚本来创建一个新的CSV文件,这非常简单。我将走这条路。您可以在Excel中完成此操作。一个简单的循环可以满足您的需求。我很久以前也回答过一个类似的问题。。。我们必须搜索它。如果我能,那么我会发回