在Excel VBA中一次写入多个单元格

在Excel VBA中一次写入多个单元格,vba,excel,Vba,Excel,在Excel VBA中,我使用一些代码来更新单元格。比如: for i = 1 to 1000 for j = 1 to 1000 cells(j,i)=<whatever_different_in_each_cell> next next 用于i=1到1000 对于j=1到1000 细胞(j,i)= 下一个 下一个 有没有办法一次更新所有单元格,而不是单独更新每个单元格?原因是在Excel中更新一个单元格非常耗时,当有很多单元格时,很快就会变得没

在Excel VBA中,我使用一些代码来更新单元格。比如:

for i = 1 to 1000
    for j = 1 to 1000
        cells(j,i)=<whatever_different_in_each_cell>
    next
next
用于i=1到1000
对于j=1到1000
细胞(j,i)=
下一个
下一个
有没有办法一次更新所有单元格,而不是单独更新每个单元格?原因是在Excel中更新一个单元格非常耗时,当有很多单元格时,很快就会变得没完没了。

范围(单元格(1,1),单元格(10001000))=“任意”

range().Value=Array(value1,value2,valueN)
值的数量必须与
范围中的单元格数量完全相同,否则,该范围将填充
s.

尝试以下操作:

Sub WriteMultipleCells()

x = "whatever"
ThisWorkbook.Worksheets("Sheet1").Range("A1:X1") = x

End Sub

检查,因为您的单元格彼此相邻。Comintem指出的数组方法是一种很好的方法。如果您最终在MAPERR工作表或多个工作表上跳转,那么您可能需要执行一些操作,例如关闭屏幕更新,直到您的代码完成它需要执行的操作。最后再打开。共产国际的解决方案很有魅力,谢谢!!您可能想将其作为真正的解决方案发布?谢谢,但我的括号之间的内容表明单元格可能不同。
Sub WriteMultipleCells()

x = "whatever"
ThisWorkbook.Worksheets("Sheet1").Range("A1:X1") = x

End Sub