从阵列写入单元格时是否需要指定范围?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从阵列写入单元格时是否需要指定范围?相关的知识,希望对你有一定的参考价值。

我有一个可变大小的2D数组,可以在行和列维度范围内。当我将数据从数组写入excel中的范围时,我正在使用这行代码:

Wksht.Range("A1:I2019").Value = dataArr

dataArr是我需要写入Excel中的范围的数组。

我想保持我的范围(A1:I2019)变量接受任何大小的数组。有没有一种有效的方法来解决这个问题?我在考虑使用某种类型的字符串构建器或string.concat函数,同时计算我的数组的行和列,但我觉得必须有更好的方法。

答案

是。

简单的方法是使用.Resize

Wksht.Range("A1").Resize(ubound(dataarr,1),ubound(dataarr,2)).Value = dataArr

一个说明:

以上是针对base 1阵列的。对于基数0数组+ 1到ubound()。

如果你的数组从0或1以外的其他东西开始,这不常见但不是闻所未闻,或者,如果你不确定哪个,那么你可以使用:

Wksht.Range("A1").Resize(ubound(dataarr,1)-Lbound(dataarr,1)+1,ubound(dataarr,2)-Lbound(dataarr,2)+1,).Value = dataArr

以上是关于从阵列写入单元格时是否需要指定范围?的主要内容,如果未能解决你的问题,请参考以下文章

当我使用单元格时索引超出范围(Swift)

选择单元格时,TableVIew 中的 UIImage 会移动

删除 UITableView 中的最后一个单元格时索引超出范围

在我的表格视图中设置单元格时索引超出范围

如何在锁定其中一些单元格时重新排序 UICollectionView 单元格

如何用java向指定的EXCEL单元格中写入数据?