[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/30 17:46 / Filesize : 292 KB / Number-of Response : 1013
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part79(ワッチョイあり)



537 名前:デフォルトの名無しさん (ワッチョイ 2da5-wYA+) mailto:sage [2023/06/26(月) 14:40:01.51 ID:tFrwHTpK0.net]
今月(2023/6)に入ってから、今まで問題なく使用できていたマクロの処理時間が異常に長くなる現象が発生しています。
処理を一つ一つ試していくとCopyメソッドに特に時間がかかっているようです。
実験として以下のコードを作成してみました。
Sub CopyTest1()
Dim i As Long, maxRow As Long
Dim STime As Double, ETime As Double

STime = Timer
Application.ScreenUpdating = False
maxRow = Cells(Rows.Count, 5).End(xlUp).Row

For i = 1 To Cells("A1")
Cells(2, 1).Copy
Cells(2, 2).PasteSpecial
Cells(2, 3).Copy
Cells(2, 2).PasteSpecial
Next i

Application.ScreenUpdating = True
ETime = Timer

Cells(1, 2) = ETime - STime
Cells(maxRow + 1, 5) = ETime - STime
End Sub
A1セルの値が5の状態で10回実行し、E列に書き出された処理時間(秒)は以下の通りでした。
{14.82, 2.00, 5.67, 14.82, 2.00, 14.82, 14.82, 14.82, 14.83, 14.83}
また、ペーストを行わず、コピーだけをForで繰り返した結果は
{14.83, 14.82, 14.83, 14.82, 3.84, 14.81, 7.50, 1.99, 13.01, 14.83}
コピーを1回行った後、Forでペーストを10回行うようにした結果は
{0.05, 0.05, 0.03, 0.04, 0.05, 0.04, 0.04, 0.04, 0.04, 0.05}
問題が発生しているのはExcel2021を使用しているPCのみで、同じネットワーク内のExcel2019を使用しているPCでは処理速度の低下は確認できませんでした。
セルの書式をコピーしたい場面が多いので配列を使用するのも難しいです。何か処理時間を短縮させる方法はあるでしょうか。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<292KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef