へっぽこヘタレシステム管理者の管理人です。
さて、今年はキーボード沼に片足をどっぷり嵌めてしまい、
短期間で、何台もキーボードを購入しては売却を繰り返しているところであります。
その中のキーボードで、
最近は・・・
Pause/Breakキーが無く、
EXCELマクロの無限ループに嵌ったりすると、
止められなくて困った事態が発生したことが何度かありました。
※タスクマネージャからEXCELを落とすしかない?
そこで、Pause/Breakキーが無いパソコンで、
EXCELマクロの無限ループの止め方を調べてみると、
パソコンの機種によって複数の方法がある様です。
テスト用EXCEL無限ループのコード
とりあえず、テスト環境として、
EXCELマクロの無限ループを作る必要があったので、
簡単に次のコードを作成してみました。
コードはいたってシンプルです。
変数【i】にひたすら1を加算して
デバッグプリントさせるだけのコードです。
Sub break_test()
Dim i As Long
i = 1
Do While i > 0
Debug.Print i
i = i + 1
Loop
End Sub
これで、マクロは無限ループとなりますので、
後はどうやって止めるかです。
無限ループの止め方
Pause/Breakキーがあれば、それで完了なのですが、
無いものは仕方がありません。
ということで、いろいろと調べて実験沁みましたが、
管理人の環境では、
- Fnキー + ESCキー
- Windowsキー + ESCキー
で止まりました。
おそらく、これが殆どのパソコンで使える方法だと思います。
- Fnキー + B
- Fnキー + Ctrlキー + B
で止まるとの記載もありましたが、管理人の環境では
何台かのパソコンで試しましたが、止まりませんでした。
キーマップ変更でPauseキーをどこかに割り当てる
また、キーマップ変更ができるキーボードであれば、
どこかのキーにPauseキーを割り当てる方法もあります。
REALFORCEのTKLでは、しっかりとPause/Breakキーがありますが、
KeychronのTKLには、Pause/Breakキーがありません。
しかし、RGBライトの切り替えキーやマイクオフ?のキー等、
あまり使わないキーあったので、
マイクオフのキーにPauseキーを割り当てました。
Pause/Breakキーがあれば、
- Ctrlキー + Pauseキー
でEXCELマクロの無限ループを止めることが出来ます。
ちなみにですが、
- Windowsキー + Pauseキー
で、Windowsのシステム画面を開くこともできます。
これで、EXCELマクロの無限ループの呪縛から、
なんとか抜け出すことが出来ました。
コメント