目安箱 IV

目安箱投稿のルールはこちらをごらんください。
ご意見は電子メールで承っています。
「目安箱」は質問禁止です。技術的な質問はそれぞれの質問箱へどうぞ。

迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
6 / 277 ←次へ | 前へ→

【293】マクロ実行中の一時停止と再開
Excel  リスキーダック  - 19/7/23(火) 13:24 -

引用なし
パスワード
   ExcelQ&Aさろんに回答として載せたものですが、全く使いそうにないので、
ここに残しておけば、誰かしらの参考になるのでは?と思いまして・・・。

ただ、一時停止中の編集作業等には、あまり耐えられないと思います。
こういう動作は、ゲーム作成者の人の方が得意そうですが。

その1、

参考
「ExcelQ&Aさろん」のTopから、VBAアクションゲームの世留と仙人
ht tp://www1.plala.or.jp/chikada/cell/0101/0101.htm

キーコード表など
ht tps://excel-excel.com/tips/vba_305.html


Declare Function GetAsyncKeyState Lib "User32.dll" (ByVal vKey As Long) As Long

Sub aaa()
 Dim i As long
 For i = 1 To 20000
   Cells(i, 1).Select
   Cells(i,1).Value = i
   If GetAsyncKeyState(16) <> 0 Then     'Shiftキーで、一時停止
     Do
      If GetAsyncKeyState(17) <> 0 Then  'Ctrlキーで、再開
        Exit Do
      End If
      DoEvents
     Loop
   End If
 Next
End sub


その2

標準モジュール

Public flg As Boolean

Sub aaa()
 Dim i As Long
 For i = 1 To 3
   For ii = 1 To 1000
     Cells(ii, i).Value = ii
     Cells(ii, i).Select
   Next
   UserForm1.Show 0
   Do
     DoEvents
   Loop Until flg = True
 Next
End Sub

ユーザーフォームを1つ作り一次停止中とか・・・。
ボタンを1つ、無くてもいいけど。

フォームモジュール

Private Sub UserForm_Initialize()
  flg = False
End Sub

'閉じるボタン
Private Sub CommandButton1_Click()
  Unload Me
End Sub

'フォームを閉じたら再開(右上のXボタン含む)
Private Sub UserForm_Terminate()
  flg = True
End Sub

111 hits

【293】マクロ実行中の一時停止と再開 リスキーダック 19/7/23(火) 13:24 Excel[未読]

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
6 / 277 ←次へ | 前へ→
ページ:  ┃  記事番号:   
0
(SS)C-BOARD v3.8 is Free