開発・運用

キーボード、マウス操作を覚えて自動実行できる「KMmacro」

投稿日:2018年6月7日

仕事の中には、ある画面内のデータをひたすら複写するとか、単純作業を延々としなければならない時ってありますよね。今回はそのような時に使えるアプリを紹介します。KMmacroはキーボードやマウスの操作を記録して、自動実行できるWindowsアプリです。

このアプリで仕事が効率化できる理由

  • 定型的な仕事が自動化できる
  • GUI操作、スクリプトの両方で効率よく設定できる

使い方

KMmacroは「1.操作の記録」「2.スクリプトの編集」「3.実行」の3ステップで行います。例として、テキストファイルに書かれた計算式を電卓アプリで自動計算するマクロを作ってみましょう。事前準備として、以下のように、計算式を10行書いたテキストファイルを用意してください。計算式はこの通りでなくても構いません。掛け算は「*」は割り算は「/」記号を使ってください。完成後は、「text.txt」という名前で保存して「C:¥temp」の下に置きます。

1.操作の記録

まずは操作の記録を行いましょう。Vectorのサイトより「kmmac61.lzh」をダウンロード後、解凍すると以下のフォルダができますので、その中にある「KMmacro.exe」をダブルクリックします。ポップアップメニューが表示されるので、「記録」をクリックします。

すると、以降のキーボードやマウスの操作が記録されますので、自動化したい操作をします。以下の通り操作してください。
①Windowsキーを押します。左下の入力欄にフォーカスが当たりますので、続けて「notepad c:/temptest.txt」と入力し、Enterキーを押します。

 

②メモ帳でサンプルのテキストファイルが開きますので、Shift+Endキーを押して1行分を文字選択します。続けて、Ctrl+Cキーを押して、文字列をクリップボードにコピーします。

③Windowsキーを押します。「calc」と入力してEnterキーを押します。

④電卓アプリが起動します。Ctrl+Vキーで計算式を張り付けると答えが表示されます。Ctrl+Cキーを押して答えをクリップボードにコピーした後、Alt+F4キーを押して電卓を終了します。

⑤メモ帳に戻りますので、Endキーを押して、=の後にフォーカスを移動した後、Ctrl+Vキーを押して答えを張り付けます。続けて、↓キー、Homeキーの順に押し、次の行の先頭(以下の赤い箇所)にフォーカス移動します。

以上で操作の記録は完了です。デスクトップ画面の右下にKMmacroのウインドウが出ていますので、操作完了後に「終了」を押します。もし操作を間違えてしまった場合は、KMMacroウィンドウの右上のボタンを押してキャンセル後、①からやり直してください。

ファイルの保存ダイアログがでますので「calc.MAC」という名前で保存します。

これで、「calc.MAC」というスクリプトファイルが出来上がりました。

2.スクリプトの編集

「calc.MAC」をメモ帳などのエディタソフトで開くと、以下のようなスクリプトファイルが作成されています。次のステップではこのスクリプトファイルを編集します。

主な修正点は以下の2点です。

・繰り返し実行の設定
さきほどの操作の記録では、1行分の計算操作しか行っていないため、繰り返し実行されるようにします。繰り返し実行には「FOR」~「NEXT」ブロックを使います。今回は②~⑤の操作を10行分繰り返し実行したいので、「FOR %0=1 TO 10」~「NEXT」で②~⑤の部分を囲みます。

・待ち時間の設定
また、メモ帳や電卓を起動したタイミングでdelay(待ち時間)を追加します。アプリを起動する操作を記録した場合、delayがないとアプリが起動する前に次の操作が実行されてしまい、うまくいきません。そこで、「delay ミリ秒」の形式で待ち時間を設定します。その他、操作の記録ではWindowsキーを押す操作がスクリプトに反映されないため、「KEY [Windows]」というコードを付け加えて、Windowsキーを押す動作を加えます。

修正後のcalc.MACは以下の通りです。赤字が編集で加えた部分です。待ち時間は余裕を入れて1000ミリ秒(1秒)としました。また、スクリプト内には「;」の後に続けてコメント行(メモ)を追加することができます。わかりやすくするため、操作の単位ごとにコメントも追加しています。

;メモ帳を起動して「c:¥temp¥test.txt」を開きます
KEY [Windows]
KEY N
KEY O
KEY T
KEY E
KEY P
KEY A
KEY D
KEY [Space]
KEY C
KEY :
KEY _
KEY T
KEY E
KEY M
KEY P
KEY _
KEY T
KEY E
KEY S
KEY T
KEY .
KEY T
KEY X
KEY T
KEY [RET]
delay 1000

;以下の処理を10回繰り返します
FOR %0=1 TO 10

;計算式を1行分選択します
KEY [Shift]++
KEY [End]
KEY [Shift]--
KEY [Ctrl]++
KEY C
KEY [Ctrl]--

;電卓を起動します
KEY [Windows]
KEY C
KEY A
KEY L
KEY C
KEY [RET]
delay 1000

;計算式を張り付けて答えをコピーします
KEY [Ctrl]++
KEY V
KEY [Ctrl]--
KEY [Ctrl]++
KEY C
KEY [Ctrl]--

;電卓を閉じます
KEY [Alt]++
KEY [F4]
KEY [Alt]--
delay 1000

;メモ帳に答えを貼ります
KEY [End]
KEY [Ctrl]++
KEY V
KEY [Ctrl]--

;次の行へ移動します
KEY [Down]
KEY [Home]

NEXT

3.実行

これでスクリプトが完成しましたので、実行して動作確認しましょう。「KMmacro.exe」を再度ダブルクリックするとポップアップメニューに「calc」が追加されていますので、こちらをクリックします。

先ほど作成したスクリプト内容をもとに自動実行されます。自動実行中は他のキーボード、マウス操作はしないようにしましょう。うまくいけば、test.txtの全行の計算式の答えが記入されます!

決まった時間に自動実行する

さきほどは手動で実行する方法をご説明しましたが、「決まった時間に自動実行したい」というケースもあります。そのような場合は、以下の手順で自動実行するようにできます。(なお、Windows10の場合の手順となります。)

①メモ帳を開き、「KMmacro.exe /FILE=スクリプトファイル名」というコマンドを記述します。「KMmacro.exe」と「スクリプトファイル名」の前にはKMMacroのインストールディレクトリを付けてください。インストールディレクトリが「C:\KMMacro」の場合は以下のようになります。このテキストファイルを「KMmacro.bat」という名前で保存します。

②次に、Windowsのスタートメニューより「コントロールパネル」を開き、「管理ツール」をクリックします。

③続けて、「タスクスケジューラ」をクリックします。

④タスクスケジューラ画面が起動します。右にある「基本タスクの作成」をクリックします。

⑤任意のタスク名を入力して「次へ」をクリックします。

⑥起動する間隔を指定します。「毎日」「毎週」「毎月」などから選択できます。今回は「毎日」を選択しました。「次へ」をクリックします。

⑦毎日にした場合は実行する時間も指定します。今回は1時にしました。「次へ」をクリックします。

⑧「プログラムの開始」を選択して「次へ」をクリックします。

⑨スクリプトに①で作成した「KMmacro.bat」の場所を指定して「次へ」をクリックします。

⑩確認画面が表示されます。「完了」をクリックします。

これでタスクが登録されました。移行は毎日1時にPCが起動していれば、KMmacroのスクリプトが自動実行されます!

 

以上がKMmacroの使い方でした。KMmacroはGUIベースでざっくりと操作の記録し、繰り返し設定や待ち時間などの細かな修正はスクリプトで編集する方式となっていますので、効率よく設定を行うことができます。今回はキーボード操作の自動操作の例をご紹介しましたが、マウス操作を覚えさせることや、ファイルを開く等の関数も用意されています。(詳細はKMMacroに同封の「KMMacro.txt」をご覧ください。)

昨今ではRPAツールが流行っており、OCRを使って画面の操作等ができるRPAツールもできますが、その分高価ですし、操作を覚えるのも大変です。KMmacroは完全無料で使えますので、まずはKMmacroで自動化を検討してはいかがでしょうか。

制限

Windows版のみとなります。Mac版はありません。なお、2009年以降更新されていませんが、Windows 10でも問題なく動作します。

サイト情報

ダウンロードURL:https://www.vector.co.jp/soft/win95/util/se211440.html
※作者サイトからはダウンロードできないため、Vectorのサイトを掲載しています。

-開発・運用
-, , ,

Copyright© WebCli , 2018 All Rights Reserved.