gpt4 book ai didi

vba - 将 VBA 数组打印到 Excel 单元格

转载 作者:行者123 更新时间:2023-12-04 22:08:30 27 4
gpt4 key购买 nike

我正在尝试将 VBA 创建的数组打印到 excel 电子表格的单元格中。渗透和径流值不断出现“下标超出范围”错误我是否正确创建软管阵列?我已将计算和打印子功能合并为一个。

 NumMonth = 12
Dim col As Long
Dim rw As Long
rw = 4
col = 13

Range(Cells(rw, col), Cells(rw + NumMonth - 1, col)).Value = _
Application.Transpose(WC)

Range(Cells(rw, col + 1), Cells(rw + NumMonth - 1, col + 1)).Value = _
Application.Transpose(Runoff)

Range(Cells(rw, col + 2), Cells(rw + NumMonth - 1, col + 2)).Value = _
Application.Transpose(Percolation)
End Sub

最佳答案

它的 application.transpose 而不是 worksheetfunction

  Range(Cells(rw, col), Cells(rw + NumMonth - 1, col)).Value = _
application.Transpose(WC)

这是一个测试子
Sub test()
Dim myarray As Variant

'this is a 1 row 5 column Array
myarray = Array(1, 2, 3, 4, 5)

'This will fail because the source and destination are different shapes
Range("A1:A5").Value = myarray


'If you want to enter that array into a 1 column 5 row range like A1:A5

Range("A1:A5").Value = Application.Transpose(myarray)
End Sub

如果你调用你在另一个子中创建的数组,你会得到一个错误。当您单步执行代码时,可以在本地窗口中看到其原因。当您运行创建数组的子程序时,它将显示在本地,当子程序结束时它将消失,这意味着它不再存储在内存中。要从另一个子引用变量或数组,您必须传递它。

传递数组或变量可以通过不同的方式完成这里有几个链接
Here
And Here

关于vba - 将 VBA 数组打印到 Excel 单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15032339/

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