【動画あり】マウスやキーボードの操作ぐらい自動化しないでどうするの?

 

パソコンの操作って結構メンドくさいですよね。

延々と同じ操作をしていませんか?
自動化ソフトで簡単にラクしてみませんか?

って言うか、ラクしよーーよっ!!!

 

 

 

GUIの弱点を自動化ソフトで補おう!

マウスとアイコンを使うGUI(ぐらふぃかるゆーざーいんたーふぇーす)の弱点なんですけど、大量のデータを操作しようとすると同じ操作を何百回もしなければいけない場合があります。

で、同じ操作を何十回も何百回も延々とやるなんて

 

やってられるかーーーーー!!!(怒)

 

ってなりませんか?

ってことで、プログラミングだけじゃなく、パソコンを使う上で一番大切なのは

『メンドくさがる』

です。

メンドくさいのでラクをしましょう。
コンピューターは人間がラクをするために存在します。
人間が『しんどい』とか『メンドくさい』とかって感じたら、コンピューターやパソコンの存在意義がなくなっちゃいますよね。

で、今回の記事は自動化ソフトについてです。

WindowsのソフトであるUWSCというソフトを紹介していますが、他のソフトでもMacでも考え方は同じだと思います。

 

Windowsの場合

UWSC(ゆーだぶるえすしー) がオススメ。
私はこれを愛用しています。自分が使うパソコンには必ずインストールします。

UWSCは無料版と有料版がありますが、私の使い方では無料版で事足りています。

他にはRocketMouse(ろけっとまうす) というのもあります。
RocketMouseは有料です。

Macの場合

Automatorが既にインストールされていると思います。
この記事ではMacやAutomatorには触れませんが、考え方はおそらく同じだと思いますので参考にして頂ければと思います。

※ごめんなさい、Macで自動化ソフト使ったことないのでよくワカンナイです。

自動化ソフトでラクをしよう!

プログラミングをする場合も、単にコードを書けばいいってものではありません。
業務システムを開発する場合、既に存在している大量のデータを加工してプログラムの中に取り込む事があります。
その加工を手操作でやるのは非常に面倒!!

例えばですが、こんな操作があったとしましょう。

  1. CSVファイルとして住所一覧がある
  2. テキストファイルへコピーする
  3. テキストファイルへコピーする際、10行おきに空白行を入れる
※あまり実用的な例ではありませんし、エディタの機能を使う方が早かったりしますが、まずは簡単な例としてご覧頂ければと思います。

 

↓こんな感じになります。
※音声はありません。/黄色の丸:マウスカーソル/赤色の丸:クリックした時
※最初の操作は手動でやっていますが、2回目からはUWSCの再生ボタンをクリックしてからはマウスは触っていません。UWSCがマウスカーソルを操作しています。

 

上記の動画の操作は以下の通りです。

  1. UWSCの記録ボタンクリック
  2. 右側のExcelのタイトルバークリック
  3. Shift + → を3回 (A~D列を選択)
  4. Shift + ↓ を9回 (1~10行目までを選択)
  5. Ctrl + c (コピー)
  6. Ctrl + ← (カーソルを一番左へ移動)
  7. ↓ を10回 (次回コピーしたい位置の11行目へ移動)
  8. 左側のエディタのタイトルバークリック
  9. Ctrl + v (ペースト)
  10. Enter (空白行を入れる)
  11. UWSCのSTOPボタンクリック
  12. UWSCの再生ボタンクリック
  13. 以降、手動では操作せず、UWSCが2.~9.番を繰り返してくれる

最初は手操作でやり、それを記録しています。
記録後、つまり2回目からの操作はUWSCの再生ボタンを押すだけです。
手操作していません。(私はマウスやキーボードから手を離しています)

2回目からはラクチンですよね?
初回の操作をちゃんとできてそれを記録さえすれば、2回目からは再生ボタンをクリックするだけで処理が進みます。

UWSCを使うことによって手操作が減ります。
手操作が減るということは、間違いが減ります。

  • 単純にラク
  • 間違える可能性が激減(これ重要!

もっとややこしい処理もできるの?

uwsファイル改造をすればややこしい処理もできる説

UWSCでは、操作を記録した内容をファイルとして保存しておけます(拡張子はuws)。

操作記録後、保存ボタンをクリックすれば保存できます。

uwsc_00003

もちろんそのファイルは何度でも使えます。
中身はこんな感じ↓です。

MMV(878,2,10)
MMV(879,2,15)
MMV(880,2,32)
MMV(880,1,327)
MMV(880,2,31)
ACW(GETID("KEN_ALL_ROME.CSV - Excel","XLMAIN"),640,0,640,720,0)
BTN(LEFT,DOWN,880,3,156)
ACW(GETID("KEN_ALL_ROME.CSV - Excel","XLMAIN"),640,0,640,720,0)
BTN(LEFT,UP,881,3,124)
KBD(VK_SHIFT,DOWN,749)
KBD(VK_SHIFT,DOWN,499)
KBD(VK_SHIFT,DOWN,32)
KBD(VK_DOWN,CLICK,31)
KBD(VK_DOWN,CLICK,124)
KBD(VK_RIGHT,CLICK,125)
KBD(VK_RIGHT,CLICK,141)
KBD(VK_RIGHT,CLICK,94)
KBD(VK_SHIFT,UP,94)
KBD(VK_CTRL,DOWN,140)
KBD(VK_C,CLICK,390)
KBD(VK_LEFT,CLICK,141)
KBD(VK_CTRL,UP,187)
KBD(VK_DOWN,CLICK,296)
KBD(VK_DOWN,CLICK,110)
KBD(VK_DOWN,CLICK,202)
MMV(881,3,780)
MMV(866,5,10)
MMV(840,7,16)
MMV(818,7,10)
MMV(796,7,15)

何らかのプログラム言語を知っているのであれば是非読んでみてください。
なんとな~く分かると思います。

もちろん細かい事は分からないですが、

MMV(878,2,10)
MMV(879,2,15)
MMV(880,2,32)
MMV(880,1,327)
MMV(880,2,31)
ACW(GETID("KEN_ALL_ROME.CSV - Excel","XLMAIN"),640,0,640,720,0)
BTN(LEFT,DOWN,880,3,156)
ACW(GETID("KEN_ALL_ROME.CSV - Excel","XLMAIN"),640,0,640,720,0)
BTN(LEFT,UP,881,3,124)
KBD(VK_SHIFT,DOWN,749)
KBD(VK_SHIFT,DOWN,499)
KBD(VK_SHIFT,DOWN,32)
KBD(VK_DOWN,CLICK,31)
KBD(VK_DOWN,CLICK,124)
KBD(VK_RIGHT,CLICK,125)
KBD(VK_RIGHT,CLICK,141)
KBD(VK_RIGHT,CLICK,94)
KBD(VK_SHIFT,UP,94)
KBD(VK_CTRL,DOWN,140)
KBD(VK_C,CLICK,390)
KBD(VK_LEFT,CLICK,141)
KBD(VK_CTRL,UP,187)
KBD(VK_DOWN,CLICK,296)
KBD(VK_DOWN,CLICK,110)
KBD(VK_DOWN,CLICK,202)
MMV(881,3,780)
MMV(866,5,10)
MMV(840,7,16)
MMV(818,7,10)
MMV(796,7,15)

とかはShiftキーを押し下げたんだなとなんとな~く分かりますよね?
分からないところは読み飛ばせばいいです。分かるところのみ読みましょう。

詳しく知りたければUWSCのヘルプを見ればスクリプトの説明はされています。
ヘルプを読めば自分でスクリプトを組むことは可能です。
でもイチからスクリプトを作るのは難しいですよね。

UWSCで自動記録して、その自動記録した結果をスクリプトファイルとして保存し、少しだけ自分で改造すればいいのです。

この考え方はExcelマクロも同じですよ!

 

が!!!!

 

私の場合、UWSCのスクリプトは全く分かりません。
以前は多少の改造はやっていましたが(一切ヘルプを見ないので分かる範囲だけでしたが)、今は全くやっていません。

なので、実はこの方法はオススメではありません。

 

 

スクリプトを知らなくてもエディタの機能を併用すればもっとラクできる説

結論を言ってしまいますが、UWSCとエディタのキーボードマクロ機能を組み合わせて使うこの方法がオススメです。

 

細かい操作が必要な場合は、UWSCでやろうとするのではなく、エディタ側で処理するようにすればいいのです。
私はエディタとして秀丸エディタやEmacsを使っているのですが、エディタのキーボードマクロをUWSCと共に併用するようにしています。

先ほどのサンプルよりもう少し細かい事をやってみましょう。
やりたいことは以下の通り。

  1. CSVファイルとして住所一覧がある
  2. テキストファイルへコピーする
  3. テキストファイルへコピーする際、3行おきに空白行を入れる
  4. 郵便番号の先頭に0を補う
  5. 郵便番号に「-」(ハイフン)を入れて000-0000という形にする
  6. 住所の中にタブや空白があれば消す
  7. 英数字や記号を半角にする(1丁目を1丁目に)

※音声はありません。/黄色の丸:マウスカーソル/赤色の丸:クリックした時
※最初の操作は手動でやっていますが、2回目からはUWSCの再生ボタンをクリックしてからはマウスは触っていません。UWSCがマウスカーソルを操作しています。

どうでしょうか?
結構ややこしい事を一瞬でやってますよね。

これはですね、エディタのキーボードマクロ機能を使って、事前にやりたい事の4番以降を記録しています
UWSCでそのエディタのキーボードマクロ機能を呼び出している形になっています。

エディタのキーボードマクロ機能の説明は今回は省きますが、UWSCもエディタのキーボードマクロ機能も両方共プログラミングとか細かい設定とかは一切やっていません。
手操作を一回だけやってそれを記録し・再生しているだけに過ぎません。

今回はUWSCを再生するのに毎回再生ボタンを押していますが、UWSCの再生方法は4パターンあります。

  1. 再生ボタンクリック
  2. キー操作:ALT + F1
  3. uwsファイル読み込み時に実行回数指定
  4. スクリプトにFOR命令を入れて回数指定

ちょっとした操作なら 1.再生ボタンクリック2.キー操作:ALT + F1 でいいでしょう。
4.スクリプトにFOR命令を入れて回数指定 は面倒なので絶対にイヤ!(笑)
3.uwsファイル読み込み時に実行回数指定 が一番ラクですね。(uwsを一旦出力しておく必要はありますが)
実際私は 3.uwsファイル読み込み時に実行回数指定 を使うことが多いです。

uwsc_00004

3.uwsファイル読み込み時に実行回数指定 に100とか200とか設定しておき、席を離れて休憩室でお茶でも飲みます。
席に戻ってきたら処理が終わっているという感じです。

パソコン操作もプログラミングもメンドくさがろう!!!

パソコン操作なんてラクしてナンボです!
別にプログラマだけじゃなくても、パソコンを使うなら絶対にラクしましょう!
パソコンを使っていると結構同じような操作をする事が多いです。
1-2回なら別にいいんですけど、10回も20回も同じような操作をしてるとしんどくなるし、間違える事もあります。
手操作は間違いの元ですからね、

また、プログラマは 『メンドくさい事を避ける』 ものです。
『いつ何時も手間を惜しみません!!!』 というような人は(ある意味)プログラマには向いていません。
『今はしんどくて面倒な作業だけど、これを今やっておけば、後でめっちゃ楽できる!!』 という思考がプログラマ向きです。
もっと言えば 『コンピューターができる事はコンピューターがやれよ! 人間には楽させろよ!』 という思考が一番いいと思います。

まとめ

今回はプログラミングの話ではなく、パソコンの操作も手を抜こうという話です。
プログラミングの際はパソコンを操作しますから、その時にこの方法で操作をラクにします。

私の場合、手操作で1時間くらいかかる操作なんてメンドくさくてやってられないので、UWSCを仕掛けておいてパソコンを離れてゆっくりお茶でも飲みます。
お茶飲んで席に帰ったら処理が完了しているというわけです。

無人の席でマウスが動いている様子は結構面白いですよ(笑)

 

自動化ソフトを使いこなすのは難しくはないですが、ちょっとしたコツや工夫は必要かも知れません。
すぐには役立てる事はできないかも知れませんが、何度も使っていくうちにコツなんかすぐに分かるようになります。

『な~んかいつも同じような作業を、何度も何度もやってる気がする・・・』

と感じてる方はぜひお試しください。

 

 

コメントを残す

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

ABOUTこの記事をかいた人

Windows/Mac/Linuxを使う現役システムエンジニア&プログラマ。オープン系・組み込み系・制御系・Webシステム系と幅広い案件に携わる。C言語やC#やJava等数多くのコンパイラ言語を経験したが、少し飽きてきたので、最近はRubyやPython、WordPressなどのWeb系を修得中。初心者向けのプログラミング教室も運営中。オンライン・対面・出張等でプログラミングをレッスンします。