我目前在我的代码中使用了很多For ... Each
循环,这使得它的速度变慢了,是否有更快的方法?
我听说我可以将范围复制到数组并编辑数组并将其粘贴回来,但是我在编辑数组中的每个单元格时遇到一些问题。
以下是我正在使用的每个代码的当前信息 - 谢谢。
Dim cell As Range
For Each cell In Sheets("sheet1").UsedRange
cell.Value = cell.Value
Next cell
答案 0 :(得分:3)
试试这个 - 更快更有效:
Sheets("sheet1").UsedRange.Value = Sheets("sheet1").UsedRange.Value
答案 1 :(得分:2)
这些方面的东西:
Dim aCells As Variant
Dim x As Long
Dim y As Long
aCells = Sheets("Sheet1").UsedRange
' Now do something with the array;
' We'll debug.print the contents of each element
' to verify that it matches the cells in the sheet
For x = 1 To UBound(aCells, 1)
For y = 1 To UBound(aCells, 2)
Debug.Print aCells(x, y)
Next
Next