パソコンスキル教科書

パソコンスキルの教科書

東京大学大学院卒。博士課程に進学を志すも、担当教授と折が合わず、無職になる。医者を目指すも結局断念。田舎で派遣社員として働く。「スキルがなければ、仕事ももらえない」と悟り、ビジネススキルを学ぶ。プログラミング、英語を学び、一部上場企業へ転職。年間100時間以上の業務効率化を行い、社内講師に抜擢。海外の案件を担当し、数億円のプロジェクトに携わる。個人の事業でも、月売上100万を達成。現在は、自分の価値を高めるためのスキル向上支援を行う

マクロの自動記録を作成するときの10のコツや注意点

f:id:gene320:20170809232002p:plain

マクロの自動記録は、エクセルマクロ初心者でも、十分に仕事で活用できます。しかし、上手に活用する方法を理解しておかないと、途中でつまずいてしまいます。ですので、コツを抑えてうまく使えるようになりましょう。ぜひ、このまま読み進めていってください。

もしマクロの使い方について知らない方は、まずはこちらの記事を読んでみてください。

www.fastclassinfo.com

マクロの自動記録を作成するときの5つのコツと活用法

マクロの自動記録の使い方だけを覚えても、上手に使えるようになりません。まずは、マクロの自動記録を作成するコツや活用法を抑えることが大切です。それでは、自動記録でマクロを作成するときの基本となる5つのコツを紹介します

コツ1|自動記録されるマクロのコードを表示しながら操作する

「エクセル」と「VBE」を画面右と画面左に表示しながら、マクロの自動記録を作成しましょう。そうすると、操作の度に、コードが追加されます。

f:id:gene320:20170809225237p:plain

それを見ながらマクロの自動記録を作ると、「操作」に対応する「コード」が一目で分かるので、とてもわかりやすいです。ぜひ、この状態でマクロの自動記録を作成しましょう。

コツ2|マクロは複数に分割して作成

マクロの自動記録を作成するときに、最も大切なこととして、

「短いプログラムを作って、すぐ動作を確認、ということをくり返す」ということです。

逆に、自動記録でマクロを作るとき、うまくいかない人のパターンは

すべての操作を実現する長いプログラム一気に作ろうとすることです。ついつい「カンペキなものを作りたい」、「一気にプログラムを作成したい」という気持ちばかり優先してしまいがちです。

f:id:gene320:20170809231234p:plain

しかし、マクロを自動記録で作るとき、とくに複数の操作を連続して行うマクロを作るなら、それぞれの操作を実現するマクロを作る。その後で、それらを連続して実行するように加工していきます。

イメージとしては、

[1] 実行したい操作ごとにマクロを作る
[2] 連続実行するプログラムに少し変える

[1]で作成したそれぞれのマクロを作成する。そして、動作確認する。たとえば、「並び替えして印刷する」マクロを一気に作ることはせず、「並び替え」マクロ、「印刷」マクロをそれぞれ作成して、動作確認する。

それぞれが動くことを確認したら、すべての[1]を連続実行する[2]というマクロを作ります。これが、初心者の方にオススメの自動記録作成のコツです。

[2]の連続実行するマクロの作り方は、こちらの記事で紹介していますので、合わせてよんでみてください。

コツ3|途中で失敗したら、合図の作業を行う

マクロの自動記録は、あなたのエクセルの操作を記録してくれます。しかし、エクセルの操作に失敗してしまうと、失敗した操作まで記録してしまいます。その結果、

・自動記録を最初からやり直し…
・どのコードが、どの操作を意味しているのか分からない…

こんなことになりがちです。せっかく途中まで作成したので、最初からやり直しにするのは時間がもったいない。

ですので、「操作を間違えたら、この操作」と決めておくことをオススメします。

たとえば、誤った操作をしたとき、A1のセルに「ここからやりなおし」という言葉を入力すると決めておきます。

f:id:gene320:20170809225457p:plain

そうしておくと、操作に失敗しても、以下のコードが出てきたら、仕切りなおしの合図とわかります。

  Range("A1").Select
    ActiveCell.FormulaR1C1 = "ここからやりなおし"
  Range("A2").Select

このように、工夫しておくと、マクロの自動記録で操作に失敗しても、やり直しがなくなり、作成スピードが上がります。

もちろん、レベルが上がると、自動記録で作成したコードが読めるようになるので、この工夫は必要ありません。あくまで、初心者の方で、自動記録で作成したコードを読めない方への応急処置です。

コツ4|矢印キーを使わない!セルをマウスでクリックして絶対参照する

自動記録を作成するときは、マウスでセルをクリックしましょう。というのも、あなたの意図マクロの自動記録の意図が異なるからです。

もし、あなたがセルA1からマクロを開始すると思っていても、実はマクロの自動記録はマクロ実行時にカーソルがあるセルからマクロを開始することがあるからです。

たとえば、マクロの自動記録で以下のようなコードを作成したとします。

   ActiveCell.FormulaR1C1 ==SUM(R[3]C:R[1]C)

このコードは、その瞬間にカーソルが合っているセルから、下に3つ分のセルの値を合計するマクロです。つまり、以下のように、カーソルの位置によって、計算結果が異なります。

[1] マクロ実行時、セルのカーソル(Activecell)がA1にある場合

「A2-A4」までの合計を計算して、A1に出力します。

[2] マクロ実行時、セルのカーソル(Activecell)がA2にある場合

「A3-A5」までの合計を計算して、A2に出力します。

対処法としては、マクロの自動記録ではセルをマウスでクリックすることです。セルA1をクリックすれば、以下のようなコードになるので、間違いを減らすことができます。

   Range("A1").Select
    ActiveCell.FormulaR1C1 ==SUM(R[3]C:R[1]C)

補足

上記のような「思い違い」は、マクロの自動記録を行うとき、矢印キーで操作することが原因で起こります。なぜなら、矢印キーで移動すると、相対参照とされるからです。

相対参照では、今あるセルから「右に4セル」「下に5セル」移動したセルと表現されます。つまり、マクロの自動記録を作成したときは「セルA1」から、「右に4セル」「下に5セル」で「セルE5」が対象になっていたとします。

しかし、いざ自動記録で作成したマクロを使うと、実行時のセルが「A2」の場合、「右に4セル」「下に5セル」移動したセル「セルE6」が対象になってしまいます。

初心者のうちは、マクロの自動記録を作成するときは、マウスでセルをクリックすると失敗するリスクを減らせます。

コツ5|どんどんテストするために、ファイルをコピーしておく

とくに初心者、入門者のうちは、どんどんテストすることをオススメします。

テストとは、作って、動作をチェックして、思い通りの結果が得られるか、確認することです。しかし、テストしようと思っても、いきなり本番のファイルでやると、失敗したときのリスクが高くなってしまいます。

そこで、業務で使うエクセルシートではなく、テスト用にコピーしたものを利用するようにしましょう。でないと、大きなミスをしたとき、復元できなくなる可能性があります。

テスト回数を早く回せば回すほど、自動記録が完成するまでのスピードが上がります。

マクロの自動記録のデメリット!使うときに注意する5つのこと

マクロの自動記録で注意したい点を紹介します。自動記録で失敗しないためにもぜひこのまま読みすすめていってください。

注意点1|余計なキーボード操作まで記録(スクロールも記録)

マクロの自動記録では、マウスのスクロールのようなキーボード操作も記録されることがあります。

もし、余計な操作をしても、[Ctrl] + [Z] で元に戻すことで、余計なコードをリセットできる場合もあります。ただし、「マウスでのスクロール」や「セルのクリック」などは、[Ctrl] + [Z]でもリセットできません。

リセットされたかどうかを確認するためにも、ぜひ自動記録を作成するときは、マクロのコードを見ながら、自動記録のマクロを作成しましょう。

注意点2|自動記録されたコードが読みづらいのは仕方ない

自動記録されたコードは、初心者には難しくて解読できません。初心者のうちは、ある程度割り切りが必要です。少し調べて、分からないならあきらめましょう。

自動記録を使えば、「完全自動化」とまではいかなくても、(手作業)+(マクロ)で、そこそこの業務効率化はできます。ですので、ある程度の結果が得られるなら、うまくいかない部分があっても、OKとすることをオススメします。

中級レベルになると、自動記録の内容もスラスラ読めるようになります。自動記録で作成したコードを手書きで修正・メンテナンスして、加工することができるようになります。その方法が知りたいなら、こちらの無料動画で紹介されていますので、興味がある方はチャレンジしてみてください。

注意点3|マクロ実行するとずれる…原因は相対参照|R1C1はダメ

コツのパートでも紹介しましたが、マクロの自動記録で、矢印キーを使うと、相対参照されます。相対参照は、初心者の方には、不便なことも多いので、自動記録を作成するときは、マウスでセルをクリックすることをオススメします。

というのも、相対参照では、今あるセルから「右に4セル」「下に5セル」移動したセルと表現されるからです。

マクロの自動記録を作成したときは「セルA1」から、「右に4セル」「下に5セル」で「セルE5」が対象になっていたとします。しかし、いざ自動記録で作成したマクロを使うと、実行時のセルが「A2」の場合、「右に4セル」「下に5セル」移動したセル「セルE6」が対象になってしまいます。

ですので、初心者のうちは、マクロの自動記録を作成するときは、マウスでセルをクリックすると失敗するリスクを減らせます。

注意点4|途中や続きから再開したり、更新はできない

マクロの自動記録を中断すると、途中から再開することはできません。一度作った自動記録を修正したり、更新するには、手書きで修正する必要があります。もし、操作を途中から再開するとしても、作成した自動記録は、新規に登録されます。

注意点5|「右クリック」動作は記録されない。右クリックで実行したこと記録される

右クリックの動作そのものは、記録されません。

f:id:gene320:20170809230405p:plain

右クリックで行った操作は、記録されます。たとえば、右クリックで挿入を行うと、右クリックという動作は記録されませんが、挿入の動作はコードが記録されます。

f:id:gene320:20170809230421p:plain

自動記録の限界は、マクロを手書きで編集できると突破できる

自動記録は、とても便利な機能ですが、もちろん限界があります。それは、以下の2つです。

・「繰り返し」ができない
・「もし~なら、××する」(条件分岐)ができない

マクロの自動記録だけに頼っているかぎり、「繰り返し」や「条件分岐」を自動化することはできません。しかも、残念なことに、マクロで仕事を自動化するときに、重要なポイントは、この「繰り返し」や「条件分岐」です。

ですので、もしあなたが「仕事を効率化したい」、「もっといろいろな仕事をボタン一つで終わらせたい」と考えているなら、「繰り返し」や「条件分岐」を学んで、手書きでコーディングできるようになる必要になります。

まずは、自分で試してみたり、ネットで調べることからはじめてみるといいでしょう。しかし、初心者のうちは、「なかなかうまくいかない」、「時間がかかってしまう」、「結局できなかった」となりがちです。

本やウェブ情報で学ぶのもアリですが、画像だけだと、イマイチ分からない点も多いです。もし、すぐに習得したいなら、動画や説明を聞きながら、学ぶのがもっとも早い方法です。動画のオススメはこちら(無料)の動画です。興味がある方は、ぜひこの無料動画を見て練習してみてください。

自動記録で作成したマクロを手書きで修正できるようになれば、あなたが自動化できる作業の幅もグッと広がります。ぜひチャレンジしてみてください。

エクセルマクロVBAに関する情報はこちら

エクセルマクロVBAの情報は知りたい方は、こちらの記事もオススメです。

マクロの自動記録について、詳しく知りたいなら

www.fastclassinfo.com

エクセルマクロを使えば、「できること」を知りたいなら

www.fastclassinfo.com

エクセルマクロの難易度や習得までの期間を知りたいなら

www.fastclassinfo.com

エクセルマクロを独学で習得したいなら

www.fastclassinfo.com

エクセルマクロとは?もっと詳しく知りたいなら

www.fastclassinfo.com

ぜひエクセルマクロを活用して面倒な仕事を自動化して効率化していただければ、とうれしいです。