[[20250417200546]] 『マクロ意味』(肉) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『マクロ意味』(肉)

こんばんは、

マクロで教えてください。

下記はどのような意味でしょうか?

教えていただきたいです。

時間を止める?でしょうか?40/8640000は何を表していますか?

Application.Wait [now()] + 40 / 86400000

よろしくお願いいたします

< 使用 Excel:Excel2010、使用 OS:unknown >


 今から 40 ミリ秒後まで処理を待ちなさいという命令です。
 ミリ秒は 1/1000秒と言う意味です。

 86400000 は =24*60*60*1000
 1 / 86400000 を ミリ秒に掛けると、日単位に換算されます。
 (Now()は1日を1としたものなので)

(xyz) 2025/04/17(木) 20:20:28


お返事ありがとうございます。

丁寧なご説明感謝いたします。

申し訳ございません。私には難しく・・・Application.Wait [now()] + 40 / 86400000
の部分を変更したら

回ってる時間を短くできるかなと思ったのですが違いますか?

Sub 回す()
Dim i As Long, j As Long, k As Long
Call reset
For i = 40 To Application.RandBetween(50, 120)
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
j = (i - 1) Mod 40 + 1
k = i Mod 40 + 1
.Points(j).Format.Fill.ForeColor.RGB = RGB(200, 200, 200)
.Points(j).DataLabel.Font.Color = vbBlack
.Points(k).Format.Fill.ForeColor.RGB = RGB(255, 80, 0)
.Points(k).DataLabel.Font.Color = vbWhite
End With
Application.Wait [now()] + 40 / 86400000
DoEvents: DoEvents
Next
End Sub
のどこを変更したら回る時間を短く出来ますか?
二度手間申し訳ございません
(肉) 2025/04/17(木) 21:17:05


 そのコードはどこから持ってきましたか?
 グラフの描画をする余裕を持たせるために、あえて待ち時間を設けているんじゃないですか?

 速度向上だけ考えたら、そのWaitメソッドをコメントにでもして実行しないようにしてみて下さい。
 別の支障がでませんか?

 適切なバランスをとるのは、試行錯誤しかありません。
 論理的に調べることができないからです。
(xyz) 2025/04/17(木) 21:30:59

コードは作成時以前の方が使っていたものを使わせて頂いてます。
なるほど試行錯誤してみます。
お手数をおかけしました。
ありがとうございました。
(肉) 2025/04/17(木) 22:11:11

 というよりも、プレゼンテーションで視覚効果を演出したものでしょうね。
 時間待ちということ以上にそのプロシージャそのものが不要じゃないですか?

(xyz) 2025/04/18(金) 16:32:53


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.