0

目的は、n-1 個のセルを最大の時間でコピー アンド ペーストすることです。

このループは機能しますが、n が大きいと実行時間が長くなります。

For i = 1 to n
Range("A" & i).Copy Destination:=Range("A" & i + 1)
Next

このループの方が高速だと思いますが、機能しません。

For i = 1 to n
Range("A" & i + 1) = Range("A" & i)
Next

(上記.value が追加された場合に機能しますが、形式もコピーする必要があります。)

最速のアプローチは何ですか?

4

1 に答える 1

1

ループはまったく必要ですか?これがあなたがやろうとしていることのようです:

Range("A1").Copy Range("A2:A" & n + 1)
于 2013-08-08T20:56:31.703 に答える