|
こんにちは。かみちゃん です。
>エクセルで使うので止めたい時に体裁の良い方法があったらお教えください。た
>とえばボタンを押したら止まるような。
シート上にコントロールツールボックスのコマンドボタンを2つ配置します。
そのシートの、シートモジュールに以下のコードを記述してください。
'開始ボタン
Private Sub CommandButton1_Click()
Macro1
End Sub
'停止ボタン
Private Sub CommandButton2_Click()
blnStop = True
MsgBox "処理を停止します"
End Sub
以下は、標準モジュールに記述してください。
Public blnStop As Boolean
Sub Macro1()
Dim i As Integer
blnStop = False
Do While Not blnStop '停止ボタンがクリックされるまで繰り返す
For i = 1 To 5
Application.Wait (Now + TimeValue("0:00:02"))
Select Case i
Case 1
Call A
Case 2
Call B
Case 3
Call C
Case 4
Call D
Case 5
Call E
End Select
DoEvents
Next
Loop
MsgBox "終了しました"
End Sub
Sub A()
Range("A1").Value = Range("A1").Value + 1
' MsgBox "Aを実行します"
End Sub
Sub B()
Range("A1").Value = Range("A1").Value + 1
' MsgBox "Bを実行します"
End Sub
Sub C()
Range("A1").Value = Range("A1").Value + 1
' MsgBox "Cを実行します"
End Sub
Sub D()
Range("A1").Value = Range("A1").Value + 1
' MsgBox "Dを実行します"
End Sub
Sub E()
Range("A1").Value = Range("A1").Value + 1
' MsgBox "Eを実行します"
End Sub
上記コードは、アクティブシートのA1セルに1ずつ加算していきます。
|
|