[過去ログ] Excel VBA 質問スレ Part80 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
947(3): 2024/04/15(月)22:33 ID:PE3M1YJ/(1)調 AAS
重複起動させないコードを作成してみた。自己流です。
これで、上手くはいってるようですが、
皆様はどのようにコーディングしてますでしょうか?
Private TTT As String
Sub 四角形角度付き1_Click()
Dim dt As Long
'''重複起動チェック
If TTT = "" Then '初回での起動時(つまりTTT = "") では、重複起動チェックしない。
Else
dt = Abs(DateDiff("s", Time, TTT))
If dt < 60 Then ''''重複起動チェック 60秒内の起動は断固阻止!!!
MsgBox "60sec以内に重複起動∴重複した処理中断!あと" & CStr(60 - dt) & "秒 待ってネ"
Exit Sub
End If
End If
TTT = Time
'''本処理
〜ファイル書込みがある少々重い処理 60秒位かかる〜
End Sub
949: 2024/04/15(月)23:08 ID:OK1Sosag(1)調 AAS
>>947
それ二重起動が問題なんじゃなくて、本処理という部分の実装がおかしいんだぞ?
ファイルの読み書きを同じフォルダ、同じファイルでやることがおかしい。
950: 2024/04/16(火)00:32 ID:dcxj+bdJ(1/5)調 AAS
>>947
そもそも本処理が非同期というか、別スレッド、別プロセスとかになってないと…
そのメッセージ出せるか?出てるのか?
それと、クリックしてはいけないのなら、そもそもクリックできないようにしておくのがbetterなUI
(仕様は詳しくわからんけど)
ボタンenableをFalseとかにしておく
951(2): 947 2024/04/16(火)01:07 ID:aRJ0OCMo(1/3)調 AAS
MsgBox "60sec以内に重複起動∴重複した処理中断!あと" & CStr(60 - dt) & "秒 待ってネ"
はでる。
ちなみに、図形(オートシェイプ)をクリックで
Sub 四角形角度付き1_Click()が起動する仕組み
10秒ごとに図形をクリックし、その為にmsgboxの[OK]を
10秒未満でクリックし続けると
「あと50秒まってネ」
「あと40秒まってネ」
「あと30秒まってネ」
「あと20秒まってネ」
「あと10秒まってネ」となり
そして、その後は本処理実行できるが、また
「あと50秒まってネ」
「あと40秒まってネ」
「あと30秒まってネ」
… となる。かなり忙しくクリックしまくればだけど
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.044s