Excel VBA:复制数据行的范围x次

Excel VBA:复制数据行的范围x次,excel,Excel,我需要复制和粘贴相同的信息(按顺序),1000次到同一列。数据将从1990年至2019年运行,分为四个季度 1990 FY1990 FQ11990 31-Jan-90 1 1990 FY1990 FQ21990 31-Jan-90 2 1990 FY1990 FQ31990 31-Jan-90 3 1990 FY1990 FQ41990 31-Jan-90 4 1990 FY1990 FQ11990 31-Jan-90 1 1990 FY1990 FQ21990 31-Jan-90 2 e

我需要复制和粘贴相同的信息(按顺序),1000次到同一列。数据将从1990年至2019年运行,分为四个季度

1990 FY1990 FQ11990 31-Jan-90 1 
1990 FY1990 FQ21990 31-Jan-90 2
1990 FY1990 FQ31990 31-Jan-90 3
1990 FY1990 FQ41990 31-Jan-90 4

1990 FY1990 FQ11990 31-Jan-90 1 
1990 FY1990 FQ21990 31-Jan-90 2
etc
etc

有没有一个代码可以让我自动完成这项工作?

我相信你弄错了,我相信预期的结果更像是:

1990 FY1990 FQ11990 31-Jan-90 1 
1990 FY1990 FQ21990 31-Jan-90 2
1990 FY1990 FQ31990 31-Jan-90 3
1990 FY1990 FQ41990 31-Jan-90 4

1991 FY1991 FQ11991 31-Jan-91 1 
1991 FY1991 FQ21991 31-Jan-91 2
etc
etc
为此,您应该意识到您的预期输出如下:

aaaa FYaaaa FQbaaaa 31-Jan-aa b
其中:
aaaa
aa
是年份,四位数或两位数
b
是季度号

aaaa
aa
之间有什么联系?简单:
aa=MOD(aaaa,100)

您可以从这里开始(意识到在Excel中,连接非常简单:
“TotalString”=“Total”&“String”
),所以我们开始(伪代码):

offset_number = 0
for aaaa = 1990 to 2019:
  for b = 1 to 4:
    resulting_string = aaaa & " FY" & aaaa & " FQ" & b & aaaa & " 31-Jan-" & MOD(aaaa,100) & " " & b
    Starting_Cell.Offset(offset_number,0) = resulting_string
    offset_number = offset_number + 1
  Next b
Next aaaa