gpt4 book ai didi

arrays - 使用范围填充数组)单元格

转载 作者:行者123 更新时间:2023-12-04 22:03:33 26 4
gpt4 key购买 nike

如果我在注释掉的行处于事件状态的情况下运行子程序,我会收到运行时错误 1004。
它按原样运行良好,但我需要增加数组以在另一个循环中读取更多数据。我更喜欢使用 Range(Cells 选项。

Option Explicit

Dim myarray As Variant

'There are 6 numbers stored in a1 to a6 on sheet1

Sub read_as_entire_()
'This line fails if I use Cells...
'myarray = Worksheets("Sheet2").Range(Cells(1, 1), Cells(6, 1)).Value

'This line works fine
myarray = Worksheets("Sheet2").Range("a1:a6").Value

Sheet2.Range("b1:b6") = myarray

'Sheet2.Range(Cells(1, 2), Cells(6, 2)) = myarray

End Sub

有什么不同?

最佳答案

“单元格”指的是事件工作表的范围(不是“Sheet2”,否则它将起作用),Worksheets(“Sheet2”).Range 仅接受“Sheet2”工作表的范围,因此会引发错误.您可以通过以下方式解决此问题:

myarray = Worksheets("Sheet2").Range(Worksheets("Sheet2").Cells(1, 1), Worksheets("Sheet2").Cells(6, 1)).Value

或更短
with Worksheets("Sheet2")
myarray = .Range(.Cells(1, 1), .Cells(6, 1)).Value
end with

我更喜欢使用
myarray = Worksheets("Sheet2").Cells(1, 1).Resize(6,1)

关于arrays - 使用范围填充数组)单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29583096/

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