gpt4 book ai didi

vba - excel vba从1到N填充列

转载 作者:行者123 更新时间:2023-12-03 00:09:16 26 4
gpt4 key购买 nike

我正在尝试编写 VBA 代码,以使用数字 1 到 10000 自动填充范围 A1:A10000,但无需在 A1 中输入 1,在 A2 中输入 2 来创建范围。

基本上,我需要一个如下所示的代码:

Set fillRange = Worksheets("Sheet1").Range("A1:A10000")
(1,2).AutoFill Destination:=fillRange

当然这不起作用,但你明白了。

最佳答案

在工作表中写入和读取是您可以执行的最慢的操作之一。编写省时的代码意味着尽可能多地在内存中执行操作。

尝试将所有值写入一个数组,然后一次性将整个值写入工作表,如下所示:

Sub printRange(total As Integer)
Dim i, myRange() As Integer
ReDim myRange(1 To total)
For i = 1 To total:
myRange(i) = i
Next i

'Use Transpose to shift the 1d array into a column

Worksheets("Sheet1").Range("A1:A" & UBound(myRange)).Value = _
Application.WorksheetFunction.Transpose(myRange)

End Sub

对于总计 = 10000,这几乎可以立即运行,即使在十年前的恐龙桌面上也是如此。

关于vba - excel vba从1到N填充列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42158993/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com