【发布时间】:2021-12-13 20:58:21
【问题描述】:
提前感谢您的帮助。我在 VBA 上无论如何都不是很好,我猜必须有一种方法可以节省为此编写代码的时间/精力。总之,我试图让 Sheet1.Cells(2, 1) 在 i = 2 到 21 的 Sheet2.Cells(i, 1) 上打印,然后移动到工作表 1 中的下一行。所以,它会对 Sheet1.Cells(3, 1) 执行相同的操作以打印到 Sheet2.Cells(i, 1) 这次 i = 22 到 41。下面是我拥有的代码,但我需要这样做数千次。有什么方法可以让这段代码更健壮吗?
Sub VIN_Decode()
For i = 2 To 21
Sheet2.Cells(i, 1) = Sheet1.Cells(2, 1)
Next
For i = 22 To 41
Sheet2.Cells(i, 1) = Sheet1.Cells(3, 1)
Next
For i = 42 To 61
Sheet2.Cells(i, 1) = Sheet1.Cells(4, 1)
Next
For i = 62 To 81
Sheet2.Cells(i, 1) = Sheet1.Cells(5, 1)
Next
For i = 82 To 101
Sheet2.Cells(i, 1) = Sheet1.Cells(6, 1)
Next
End Sub
【问题讨论】:
-
你有什么版本的 Excel?这可能很容易通过公式来实现。