【发布时间】:2016-06-02 22:29:53
【问题描述】:
由于在工作表中逐个单元格地写入值的大循环,我有一个运行时间很长的例程。我以为我会很聪明,首先将所有内容加载到二维数组中,然后快速将其转储到 Excel 工作表中。目标是加快速度。发现我不能只做我想做的事。
xlsheet.Range("C2") = MASTER_OUT
发现上述方法不起作用。 MASTER_OUT 是一个具有 34 列和各种行的二维数组。我希望我不必遍历数组并在工作表中逐个单元格地放置数据,因为这根本不会节省任何时间。
【问题讨论】:
-
使您的范围 C2 等于 MASTER_out 的 ubound 1 和 2。那就是让它 range(Cells (2,3),cells(ubound(master_out,1),ubound(maseter_out,2))=Master_out。现在我的 VBA 语法可能有点不合时宜,但是 ubound 1 和 2 MASTER_OUT 应该是 Master_out 中的行数和列数
-
哎呀,我和杰森约翰逊一起上学!
标签: arrays excel vba performance