繁体   English   中英

VBA Excel宏可处理5000行和5列

[英]VBA excel macro to process 5000 rows and 5 columns

我正在使用Excel 2007,范围A1:A5000中有5000条语句,范围B1:E5000中的每个语句有四个替代项。 我想将其转换为所有数据都位于G1:25000范围内的另一个样式,其中所有四个替代项都将位于每个Statement下。 我记录了一个宏,但是我不知道如何循环它,并且手动进行是不可能的。 在这里需要帮助...谢谢。

例:

Statement1 - AlternativeA 1 -  AlternativeA 2 -  AlternativeA 3 -  AlternativeA 4
Statement2 - AlternativeB 1 -  AlternativeB 2 -  AlternativeB 3 -  AlternativeB 4
Statement3 - AlternativeC 1 -  AlternativeC 2 -  AlternativeC 3 -  AlternativeC 4
Statement4 - AlternativeD 1 -  AlternativeD 2 -  AlternativeD 3 -  AlternativeD 4

输出:

Statement1 
AlternativeA 1
AlternativeA 2
AlternativeA 3
AlternativeA 4
Statement2
AlternativeB 1
AlternativeB 2
AlternativeB 3
AlternativeB 4
Statement3
AlternativeC 1
AlternativeC 2
AlternativeC 3
AlternativeC 4
Statement4
AlternativeD 1
AlternativeD 2
AlternativeD 3
AlternativeD 4

这应该将每个A:E中的值传输并转置到G列。

Sub AE_2G()
    Dim r As Long, s As Variant
    For r = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        s = Cells(r, 1).Resize(1, 5)
        Cells((r - 1) * 5 + 1, 7).Resize(5, 1) = Application.Transpose(s)
    Next r
End Sub

您实际上并不需要VBA。 只需输入公式

G1:= INDEX($ A:$ E,INT((ROWS($ 1:1)-1)/ 5)+ 1,MOD(ROWS($ 1:1)-1,5)+1)

并填充到G25000。 然后复制并粘贴特殊值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM