我创建了一个嵌套的for循环来比较2张中的3个不同的单元格值。当数据很小时,循环工作正常,但是当我在5000行上运行时,它太慢并且崩溃了。知道如何更有效地运行它。
find . -type d -name 'RUN*' | while read -r dir; do
awk '{print $0, FILENAME}' "$dir"/mod* \
| sort -k4 -g | head -1
done
答案 0 :(得分:1)
读取和写入单元格是Excel VBA中可以执行的最慢操作之一。相反,您应该将工作表中包含的值放入数组并在那里使用它们,这是一个很好的参考:http://www.cpearson.com/excel/ArraysAndRanges.aspx。使用您的NumRows变量以及列字母或数字来定义构成数组的范围,例如:
myRange = Range("A1:C" & NumRows)
myArray = myRange.value
从Chip Pearsons网站的链接:
Dim Arr() As Variant
Arr = Range("A1:B10")
Dim R As Long
Dim C As Long
For R = 1 To UBound(Arr, 1) ' First array dimension is rows.
For C = 1 To UBound(Arr, 2) ' Second array dimension is columns.
Debug.Print Arr(R, C)
Next C
Next R