【無料RPA PMCの活用】格安で高機能プログラマブルキーボードを作成する方法

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Pulover’s Macro CreatorやAuto Hot Keyを使っていてもっとも困ることはなんでしょうか? それは、ホットキー・ショートカットキーが足りなくなることです。

(いいことではあるのですが)Windows10になってからの怒濤の機能拡張のお陰で、「絶対にかぶらないように、Windowsキーとの組み合わせでホットキー設定しとこ!」と思っても、Windowsの基本機能として有効にされているホットキーが多く、押しやすく、覚えやすいホットキーというのが設定しづらくなっています。

そこで、Pulover’s Macro Creatorと、LuaMacrosを組み合わせて、安くて競合しづらい、そんな夢のような環境を構築しましょう。

Pulover’s Macro Creatorで高機能プログラマブルキーボード化を実現

本記事でやることを整理しますと、

  1. Pulover’s Macro Creator の機能を利用して、複雑なマクロやRPAを記述
  2. LuaMacros で安いテンキーやゲーミングキーボードから、他とかぶらない方法でキー操作を送信
  3. Pulover’s Macro Creator でキー操作を受信して、RPAを実行する

という流れになります。これで、テンキーをポンと押したら、RPAが実行されますよ、という流れが実現できますね。

また、今回の方法は、テンキーや左手専用キーボードくらいのキー数を想定しています。フルキーボード全てに別々のRPAの割り当てを実現したい……といった場合は、別の方法をご紹介予定です。

まだ、Pulover’s Macro CreatorやLuaMacrosをインストールしていない方は、関連ページをご覧下さい。すでに導入ずみの方は、関連は飛ばして大丈夫です。

関連

Pulover’s Macro Creator

公式サイト:Pulover’s Macro Creator

Pulover’s Macro Creatorは、Auto Hot Keyをもとに作られた高度なノーコード開発や定期実行もサポートするRPAと言って過言ではないツールです。

インストール方法やその他の関連情報については以下のページから。

LuaMacros

公式サイト:LuaMacros(ダウンロードはBinary Downloadから)

LuaMacrosは、Pulover’s Macro Creatorほど高機能ではなく、単体ではRPAほどの機能を持たないキー割り当てツールです。ただ、使用するキーボードを限定できるという無二(他にもありましたが、現環境では推奨されなかったりします)の特徴を持つツールです。詳しくは以下のページから。

1.Pulover’s Macro Creatorでマクロ(RPA)を記述する

今回は、サンプルのために、シンプルなマクロを2種類記述します。まだ、Pulover’s Macro CreatorでどうやってRPAを実現したらいいか、自分でやり方のイメージが湧かないという方は参考にしてください。もうバリバリ書いてるぜ! という方は、既存のマクロを流用してください。

※今回の記事では、Pulover’s Macro Creator のversion 5.4.0を使用しています。

メモ帳を起動するだけのマクロを作成

Pulover’s Macro Creatorを起動すると、Macro1というタブが開かれた空白のpmcファイルが開かれていると思います。そうでなければ、新規作成ボタン(Ctrl + N)で新規ファイルを作成してください。

メニューの「コマンド」から「実行 / ファイル / 文字列 / その他(R)」を選択するか、単にF8キーを押して、runコマンドの設定ダイアログを開きます。

よく使うショートカットは覚えておくと便利ですね。

メモ帳を起動するには、メモ帳の場所をPMCに教えてあげないといけないので、スタートメニュー内メモ帳アイコンを右クリックするか、Windows10のタスクバーにある検索窓から、メモ帳(notepad)を検索して右クリックします。出て来た、「ファイルの場所を開く」をクリックして、メモ帳へのショートカットがあるフォルダを開きます。

Exeファイルの場所ではないですが、これで問題ありません。続いて、開いたフォルダの、アドレスバーをクリックして選択します。

※Windows 10の仕様でクリック前後で表示が違いますが、問題ありません。

選択したら、このフォルダのパスをコピーします。

PMCに戻ると、こんなダイアログが開いているはずなので、右側の「…」ボタンをクリックして、ファイルの選択ダイアログを開きます。

ファイルの選択ダイアログにも、上のところにパスを表示する部分があるので、クリックします。

こんな感じで選択されるので、ここに先ほどコピーしてきた、メモ帳フォルダへのパスを貼り付けて、Enterキーを押すと、ファイル選択ダイアログが開いているフォルダが変わるので、メモ帳へのショートカットを選択します。

すると、このようにメモ帳へのパスが入力されるので、「OK」ボタンを押して閉じます。

ファイル選択を楽にする

地味なことですが、アプリケーションからファイルを開いたり指定したりするのが面倒な場合があります。

そういうときのために、このように選択ダイアログでもフォルダへのパスをコピーしてこれる、ということを覚えておくと便利です。

※できないタイプのフォルダ選択ダイアログもあるので、そういう時はイライラをこらえて頑張ります。

電卓を起動するだけのマクロを作成

先ほどと同じ……と言いたいところですが、実はWindows10では、電卓がストアアプリとなっていてこのような方法では起動することができません(ショートカットを作成しても同様です)。

面倒ですが、こういうときこそPMCの力を活用できると前向きに考えて、マクロ、RPAを作っていきます。

記録する内容の設定

今回は、PMCに備わっている操作を記録するツール(主要かつ高額なRPAツールと一緒ですね)を使っていきます。しかし、標準の設定では、余計な操作まで記録されてしまいます。そこで、事前に記録ボタン()の右隣にある、▼をクリックします。

すると、色々とチェックのついたメニューが出て来ますが、「キーストローク」以外のチェックを外します。外さなくても記録自体はできますが、後で余計な動作を削除しないといけなくなるので、面倒です。

結構細かく設定できるので、変なRPAツールよりもPMCの優れている点のひとつとも言えますね(ちょっと日本語が変なところがあるのは、相変わらずですが)。

マクロを記録

今回はキーボードだけで電卓を起動します(そのために、キーストロークのみを記録しました)。

Ctrl+rや記録ボタンをクリックしてマクロの記録モードを開始します。通常、Pulover’s Macro Creatorのメインウィンドウが最小化され、小さなコントロールパネルが表示されます。その後、さらにF9キーで実際に記録が開始されます(Ctrl+rや記録ボタン()をクリックしただけでは始まらないので気をつけてください)。

では、記録を開始したら、

  1. windowsキーを押して離す
  2. c
  3. a
  4. l
  5. c
  6. と順に入力。
  7. 入力したらEnter
  8. F9キーを押して記録を中止します。

LibreOffice をインストールしている人は、もしかしたら電卓ではなく、表計算が起動してしまうかもしれません。その場合は、画像認識などを使ってアイコンをクリックさせるか、「calc」ではなく「電卓」と入力させる必要があります。

マクロの修正

今記録したマクロを実行すると、実は上手く動きません。なぜなら、calcの検索結果が出る前にEnterが押されているからです(超高速のSSDアレイ搭載であれば上手く動くかも知れません)。動作させるには検索結果の更新を待つ必要があります。そこで……

2回目のcを入力している行を選択してEnterを押すか、右クリックして編集を選択します(ダブルクリックでもいいはずですが、安定しないので他の方がいいかもしれません)。

設定をちゃんとしている場合は、6行目になりますね。ここで詳細の編集ダイアログが表示されるので、

「遅らせる」のところを300にします(下がミリ秒なので、0.3秒、次のEnterの入力を遅らせます。

OKを押して編集を保存し、実行すると今度はちゃんと電卓が起動するようになりました。まだ起動しない場合は、「遅らせる」の秒数を長めに調整してみてください。

LuaMacrosで他とかぶらないショートカットを送信する

では続いて今回のキモとも言える、他とかぶらないショートカットの設定を行います。

他とかぶらないショートカットキーとは何か。それは、普通のキーボードにはないキーを使うことです。具体的にいうと、F13~F24キーを利用することです。マルチメディアキーボードのキーが利用できればいいのですが、LuaMacrosでは送信出来ないようです。

F13~F24キーは、通常のキーボードには搭載されていないキーですが、Windows OSできちんとキーコードが定義されているので利用自体は可能です。市販のプログラマブルキーボードでは送信するキーを押さなくてはいけない・リストから選択でも一覧にない・といった場合がほとんどで利用できることは稀です。ですので、「普通には使えないキーボードのキーが使える」というのが、Pulover’s Macro Creator + LuaMacros 環境での大きな利点と言えます。

サンプルスクリプト

※ここでは、使用するキーボードをマクロ読み込み時から決定してしまう方法を使っています。デバイスIDの調べ方など、詳しくは以下の記事をご覧下さい。

lmc.minimizeToTray = true
lmc_minimize()

lmc_device_set_name("MACROS", "3151ADB1")

lmc_set_handler("MACROS", function(btn, dir)
    if(dir == 1) then
        return
    end
        if(btn == 81) then
            lmc_send_keys("{F13}", 50)
        end
        if(btn == 87) then
            lmc_send_keys("{F14}", 50)
        end
        if(btn == 69) then
            lmc_send_keys("{F15}", 50)
        end
        if(btn == 82) then
            lmc_send_keys("{F16}", 50)
        end
end

ここでは、文字数の都合でQ, W, E, Rのみにキーを割り当てています。このような形で割り当てるキーを増やして行くのが便利ですね。

ただ、問題として、F13~F24の12キーだけでは、テンキーであっても数が足りないことです。その場合は、必要に応じて#{F13}などのようにコンビネーションで定義していくことをお勧めします。

その場合は、余り使用しないキーコンビネーションを使うと便利です(上記のようにWindowsキーを絡めるなど)。なぜかというと、Pulover’s Macro Creator側でも、「Shiftキー同時押しだな……」といったことが判断できるので、(他のキーボードの)「Shiftキーを押しながら、プログラマブルキーボード化したテンキーを押すと別の動作を実行する」といったキーボード同士の連携すら可能になるからです。

3.Pulover’s Macro Creator でキー操作を受信する

では、2で送信された、F13キーやF14キーを受信して、1で定義したマクロ・RPAを実行していきましょう。

設定方法は簡単で、Pulover’s Macro Creator メインウィンドウ右上の「再生」テキストボックスの中で、LuaMacrosで動作するキーボードのキーを押すことです。が、何か様子がおかしいですね?

再生テキストボックスが上図のように空欄になってしまいます。

ところが、左下の「Hotkey」表示では間違いなくF13 が表示されています。この状態であれば、動作はちゃんとします。どうも、再生のテキストボックスにF13のようなキーの表示が定義されていないために、このような表示になるようです。

実は、Hotkeyの設定は、左下のHotkey ハイパーリンクからも設定可能です。

Hotkeyをクリックすると設定ダイアログが開きますので、手動でキー名を入力することで設定可能です。キーコンビネーションの設定は、ダイアログに設定されている通りで、LuaMacrosとも共通なので分かりやすいですね。

おわりに

今回の記事で、いよいよ 1000円のテンキーが高価なプログラマブルキーボードとも遜色なく使えるようになりました。

特に、LuaMacrosだけでは実現できなかったマウス操作・画像認識といった流行のRPAと同様の機能が実現できるようになった点は大きいですね(それを専用のキーボード=ラベルを貼り付けて覚えなくても使えるようにすることもできる!)。

また、RPA動作ではなく、様々なショートカットキー・ホットキーを駆使するソフトを多数扱うタイプの人にも、LuaMacros単体ではどうしても弱かった、アクティブなウィンドウにあわせて実行する処理を変えるといったこともやりやすくなりました。

もちろん、一般的なRPAツールも有効ですし、手厚いサポートなどはありますが、こういったフリーソフトの組み合わせでも、遜色ないどころか明らかに勝っている機能を実現することも十分可能ということは知っておいて損はないですよ。

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

最新の記事