質問
2018年7月2日月曜日 3:12
EXCEL2013では、下記のコードでの画面が更新できるのですが、EXCEL2016では、更新できません
Sub 力の法則()
Worksheets(2).ChartObjects(1).Activate
ActiveChart.SeriesCollection(1).Select
For i = 1 To 20
Range("c7").Value = i * 1
ts = Timer ; 1
Do Until ts < Timer
Loop
Application.ScreenUpdating = True
Next
End Sub
EXCEL2016のバージョンは、1806(ビルド10228_20080)で、ウィンドウ10のバージョンは1709(16299.522)です
何か、解決策はあるのでしょうか?
よろしくお願いします
すべての返信 (4)
2018年7月2日月曜日 3:56 ✅回答済み
ループで止まっている間にDoEventsいれてみる?
Sub 力の法則()
Dim ts As Date
ts = Now
For i = 1 To 20
Range("c7").Value = i * 1
ts = DateAdd("s", 1, ts)
Do Until ts <= Now
DoEvents
Loop
Application.ScreenUpdating = True
Next
End Sub
個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)
2018年7月3日火曜日 1:07
Application.ScreenUpdating = False ’ これを追加
Application.ScreenUpdating = True
ってやったらどうでしょうか?
2019年11月19日火曜日 5:34
返信が遅れて、申し訳ありません
たしかに「DoEvents」を入れると、画面更新できました
ありがとうございました
2019年11月19日火曜日 5:38
ご連絡、ありがとうございます。
ただ、Application.ScreenUpdating = Falseを入れても、変化がありませんでした