質問: false do until 条件 ~ここに処理が入る~ 'ステータスバーに進捗状況表示 application.syscmd acsyscmdsetstatus, lngcount & "件 / " & lngtotal & "件 完了" doevents loop end sub 進捗状況をステータスバーに表示させるために、doeventsを入れていますが、 これがモトで再びボタンが押せてしまいます。 入れない場合、どこかクリックするだけで画面がフリーズしたようになってしまいます。 ボタンを押せなくする方法、またはボタンを押した後、画面だけ更新できる方法で、 何かよい方法は無いでしょうか?
回答: private sub xxxx_click() static isclick as boolean dim stopnow as boolean if not isclick then isclick = true stopnow = cbool(msgbox("更新します。よろしいですか?", vbyesno) = vbno) if stopnow then msgbox "中止しました。", vbokonly else do until 条件 ・・・・・ doevents loop end if isclick = false end if end sub