パソコンスキル教科書

パソコンスキルの教科書

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

エクセルマクロを時間をかけずに作成する7つのコツ

f:id:gene320:20161231003226j:plain

エクセルマクロを使い始めた人にとって、「コードを書くのが苦手」「マクロ編集の画面が分かりづらい」と感じている人は少なくありません。このような苦手意識をもっているとマクロを触る機会が減ってしまい、なかなか上達しません。

たしかにコードを書いたり、マクロを編集したりするのは時間がかかります。しかし、マクロの正しい使い方を知らないせいで、時間がかかっている場合があります。たとえば、上級者はコードをすべて書きません。補助機能を利用してマクロを書く時間を減らしています。このようなテクニックを実践できるからこそ、時間をかけずにサッとマクロを仕上げます。

そこで、この記事ではエクセルマクロVBAを時間をかけずに効率的に使いこなすコツを紹介します。このコツを身につれば、マクロ作成がとてもラクになりますので。ぜひ実践してみてください。

エクセルマクロVBAを効率的に操作する7つのコツ

エクセルマクロVBAの操作速度上げるコツ

マクロを作成するとき、多くの方は、プログラムを書くための知識をつけることに集中しています。プログラムとは、以下の画像のようなマクロのコードのことです。

f:id:gene320:20161231140651j:plain

しかし、最初にやるべきはマクロを作成するための「操作速度をあげること」です。なぜなら、作成スピードが大切だからです。

たとえば、マクロを使えば、3時間分の業務が削減できるとしても、マクロを作成するのに3時間かかったら、トクした気持ちになれませんよね。もちろん、マクロを作ってしまえば、同じ作業はすべてゼロにできるので、3時間かけて作成することに意味はあります。ただマクロ作成に時間がかかると、途中で作成するのがイヤになってしまいます。

それを避けるには、操作速度をあげることです。それでは、操作速度を上げるために、上級者が実践しているテクニックを紹介します。

コツ1|VBAのショートカットキーを覚える|Alt + F11 は必須

エクセルマクロを効率的に使いこなす人は、ショートカットキーを身につけています。なぜならショートカットキーを使えば、マクロの作成速度が3倍変わるからです。

たとえば、エクセルマクロ初心者は、エクセル画面からマクロ編集画面に移動するとき、マウスをクリックします。しかし、エクセルマクロ上級者は、[Alt] + [F11]のショートカットキーを使います。

f:id:gene320:20171001002159p:plain

なぜなら、マウスを使うと、プログラム作成に集中できないからです。エクセル画面からマクロ編集画面に移動するとき、いちいちマウスでクリックしていたら、その度にキーボードから手をはなさないといけません。せっかく集中しているのに、邪魔が入るようなものです。[Alt] + [F11]のショートカットキーを実践するだけでも、プログラム作成がグッと早くなります。

もちろん、こうは言われても、普段ショートカットキーを使わない人には実感がわかないかもしれません。しかし、ショートカットキーを知っておくだけで、マクロ作成の速度がかなり早くなります。

以前、私は友人にショートカットキーを教えたことがあります。最初は、ショートカットキーを覚えることができず苦労していました。ですが、ショートカットキーを書いた付箋をパソコンの画面横に貼って、2,3週間トレーニングしたら、少しずつ使えるようになっていきました。その後、聞いてみたら、パソコン操作が早くなって仕事のスピードが上がったと喜んでいおました。「これまではマウスばかり使っていたけど、もう戻れない」と言っていました。

マクロ作成で使うショートカットキーは、以下の7つを覚えるとグッと早くなります。

ゼッタイに必要 ☆☆☆
かなり使える ☆☆
覚えておきたい ☆

ショートカットキー 機能 重要度
Alt + F11 エクセル画面とマクロ編集画面を切り替える ☆☆☆
Tab/Shift Tab Tab:インテンドを右に1つ動かす
Shift Tab:インテンドを左に1つ動かす
☆☆☆
F8 ステップイン:プログラムを動作確認するときに一行ずつチェックする ☆☆☆
F5 マクロの実行:マクロを最後まで一気に動かす ☆☆
Home/End Home:選択している行の先頭にカーソルを移動
End:選択している行の最後にカーソルを移動
☆☆
Ctrl + R プロジェクトウィンドウにカーソルを移動する(プロジェクトウィンドウとは?)
F7 コードウィンドウにカーソルを移動する(コードウィンドウとは?)

この7つを知っておけば、マクロ作りで困ることは、ほとんどなくなります。ぜひ実践してみてください。パソコンの横にポストイットで貼っておくのもアリです。

コツ2|マクロは書かない。プログラムをコピーして使いまわす

操作速度をもっとも上げるワザは。マクロを書かないことです。上級者が必ずやるのは、これまでのプログラムを再利用することです。なぜなら、コピーして使いまわるのが、もっともラクだからです。

上級者は、手書きでプログラムを書いているように思うかもしれません。しかし実際は、コピペがメインです。もちろん、コピペだけで作業が終わるわけではありません。プログラムの全体像を最初に考えますし、コピペ後はプログラムの微調整をするために手書きで修正をいれます。ただし、プログラムの大部分はこれまでのプログラムをコピペします。

たとえば、家を建てるときも同じです。お客さんの要望を聞いたら、部屋やキッチンなどの部品は、これまでのサンプルを利用しますよね。ゼロから考えてもいいものができるワケではありませんし、時間がかかってしまいます。

ですので、操作速度をもっとも上げるワザは、マクロを書かないことです。

ただ大切なのは、これまで使ったマクロのプログラムが、どこに保管されているかを把握しておくことです。多くの場合、パソコンのどのフォルダに保管されたかを忘れてしまっています。

ですので、私はマクロが保存されているエクセルファイルはマクロフォルダにすべて保管しています。ファイル名を分かりやすい名前にするなどの工夫をするといいでしょう。

自分の作ったマクロの資産を使いまわせるように保管したファイルの場所を覚えておきましょう。

コツ3|小文字で書く

Range("A1").Value = 5

このプログラムを作るとき、Range("A1").Value = 5 とそのまま書こうとする人がいます。しかし、上級者はプログラムをすべて小文字で書きます。なぜなら、スペルミスや誤記によるエラーを減らせるからです。

たとえば、マクロを書くとき、以下のようにスペルを間違えてしまうことがあります。

Ranje("A1").Value = 5

Ranjeのjが誤記なので、エラーの原因になります。

ですので、上級者は、すべて小文字で range("A1").value=5 と書きます。この状態でEnterを押します。そうすると、以下のようにRange("A1").Value = 5 となります。マクロの補助機能が自動で先頭を大文字にしてくれるのです。

スペルミスがなければ、小文字→大文字になる

range("A1").value=5

Enterキーを押すと

Range("A1").Value = 5

この機能を利用すれば、スペルミスや誤記を見つけるチェック機構として利用できます。たとえば、ranje("A1").value=5と書いて、Enterを押すと、ranje("A1").Value = 5 となり、先頭は小文字のままです。

スペルミスがあれば、小文字→小文字のまま

ranje("A1").value=5

Enterキーを押すと

ranje("A1").Value = 5

このように、Enterを押して、誤記がない(スペルが正しい)なら、大文字にしてくれます。しかし、もし誤記がある(スペルが間違っている)なら、小文字のままにしてくれます。

ですので、先頭の文字が大文字か小文字を確認するだけで、プログラムに誤記があるかどうかをチェックできます。

このようなマクロ編集のサポート機能を利用することで、プログラムのミスを減らすことができます。初心者に限らず誰もが必ずスペルミスをしてしまいます。ですので、小文字で書くことでエラーを出すリスクを減らしましょう。

コツ4|メンバー表示の機能を活用する

メンバー表示とは、利用できるプログラムを表示してくれる機能です。上級者は、この機能を利用してプログラムを書く量を減らします。なぜならマクロで使う単語のスペルを全て暗記する必要がなくなるからです。

たとえば、以下のプログラムを書く場合

Range("A1").Value = 5

range("A1"). まで書きます。そうすると、「.」を押した瞬間に以下のようにメンバーリストが表示されます。

f:id:gene320:20171001002938p:plain

range("A1").valueとしたいので、valueの頭文字である「v」を押します。すると、頭文字が「v」のメンバーリストに移動します。

f:id:gene320:20171001003142p:plain

そこで、矢印キーの↓を1回押して、valueにカーソルを合わせてTabを押します。そうすると

f:id:gene320:20171001003325p:plain

となります。あとは=5を記入すれば

Range("A1").Value = 5

これをすることで、valueのスペルをすべて覚える必要がなくなります。「value」とぼんやりとは覚えていても、varueだったかvaluwだったか記憶するのは大変です。ですので、メンバー機能を利用して、プログラムの書く量も減らして覚える量も減らします。ぜひ活用してみてください。

マクロのプログラムの読みやすさを上げるコツ

マクロのプログラムを作成するとき、読みやすさを考えない人がいます。しかし、プログラムの読みやすさを意識しないと、修正作業をするときに時間がかかります。なぜなら、どこが間違っているのかが分からないからです。

たとえば、本や新聞では見出しを入れたり、改行を入れたりしますよね。これは、読み側が理解しやすいようにするためです。見出しや改行なしでは、どこからどこまでが一つのカタマリかわかりません。

ただマクロを作成しているときは、気にならないので、読みやすさを意識しません。しかし、エラーが出て修正作業を行うとき、読みづらいプログラムだと修正に時間がかかります。

それを避けるには、読みやすいプログラムを作ることです。それでは、読みやすさを上げるテクニックを紹介します。

コツ5|インテンドをずらす

インテンドとは、各行の先頭に空白入れて、先頭の開始文字を右にずらすことです。ずらすためにいれた空白(スペース)を指すこともあります。

なぜ、インテンドを入れるかというと、マクロのプログラムを読みやすくするためです。読みやすくすることで、プログラムを追加したり、書き直したりするときの作業がラクになります。以下の画像でインテンドある場合とインテンドがない場合を比較してみてください。

f:id:gene320:20170726230622p:plain

インテンドがあると、一つのプログラムがどこからどこまでなのかが一目で分かります。しかし、インテンドがないと、すべて同じところから書かれているため、プログラムのカタマリが分かりません。たとえば、文章を読むときも改行したり、文字の先頭をずらしたりして見やすくしますよね。プログラムも同じです。

実際に、マクロ上級者は、プログラムのカタマリ毎にインテンドを入れます。私もインテンドを入れます。インテンドは、行を選択した状態で、以下のキーを押すだけです。

・[Tab]を押すと、インテンドを右に1つ動かす
・[Shift]+[Tab]を押すと、インテンドを左に1つ動かす

f:id:gene320:20171001004343p:plain

ぜひインテンドを意識してみてください。

VBEを効率的に使うために設定を変える

VBEとは、Visual Basic Editorの略でエクセルマクロの管理・編集画面のことです。実は、上級者ほどVBEの設定にこだります。なぜなら、VBEを正しく使わないとマクロ作成に時間がかかるからです。

たとえば、エクセルマクロのコードを書くとき、コードの色を変えておくと、タイプミスにすぐに気づくことができます。

しかし、初期設定のままではタイプミスに気付きにくい条件になっています。ですので、多くの方がエクセルマクロを作成するときに何度もコードを修正しないといけません。それではどれだけやる気があっても挫折してしまいます。ですので、コードを書く事に集中するためにも、ぜひこの記事を見ながら、あなたのVBEの設定を最適化することをオススメします

VBEの設定を変更する方法

エクセル→タブ「開発」→「Visual Basic」をクリックすれば、VBEを開きます。

f:id:gene320:20170618171520p:plain

エクセルのタブに「開発」がない場合

エクセル2010以降の場合
エクセル→「ファイル」→「リボンのユーザー設定」→ □開発
□開発にチェックを入れる。すると、エクセルに「開発」タブが表示されます。

f:id:gene320:20171001004501p:plain

コツ6|自動構文チェックはチェックしない

自動構文チェックは入れないことをオススメします。なぜなら、プログラム作成の妨げになるからです。たとえば、コードを書いているとき、自動構文エラーがONになっていると、エラーが出てきます。その度に作業が止まってしまうので、集中の妨げになります。

たしかに自動チェックと聞くと、スペルミスを見つけてくれるので便利のように見えます。しかし、プログラムを作成する速度がさがり、生産性が落ちるので、OFFにしておくことをオススメします。

設定を変更する方法

1.VBEの「ツール」
2.「オプション」をクリック
3.自動構文チェックをチェックを外す

f:id:gene320:20171001004844p:plain

f:id:gene320:20171001005028p:plain

コツ7|コードの色を変更する

VBEのコードを色付することをオススメします。なぜなら、コードの間違いを見つけやすくなるからです。たとえば、私のVBEでは、識別子は「ピンク」にしています。(初期設定は自動になっています)

色を変えたパターンと、色を初期設定のままのパターンで比べてみます。

f:id:gene320:20171001005748p:plain

色付けすると、単語毎に色が変わるため、ミスを見つけやすくなります。すべて同じ色だと、どのコードに間違いや誤記があるか見えづらくなってしまいます。その結果、ミスがあったときに、プログラムを修正に時間がかかってしまいます。

設定を変更する方法

1.VBEの「ツール」
2.「オプション」をクリック
3.エディターの設定を選択
4.識別子を選択
5.前景を「自動」から「ピンク色」に変更

f:id:gene320:20171001004844p:plain

f:id:gene320:20171001005213p:plain

実際、この方法を教えたら、プログラムの見やすさが変わったので、修正しやすくなったと喜んでいました。ぜひ試してみてくださいね。

タイピングが早いとマクロを書く速度は上がる

実は、マクロを効率的に使いこなすには、タイピング速度がもっとも重要です。なぜなら、プログラム作成ではタイピングが基本だからです。ショートカットキーを使ったり、プログラムを書いたりするときはすべてキーボードをタイプします。パソコン操作の基本はキーボードタイプです。ですので、タイピングが早い人はプログラム作成も早いです。

たとえば、スポーツでも足が早い人が得意ですよね。マクロを含めたパソコン仕事の基本はタイピングです。「スポーツでの足の早さ」=「パソコンのタイピング速度」です。マクロの作成速度を上げるテクニックはたくさんありますが、タイピング速度を上げることが一番効果の高い方法です。

しかも、タイピング速度が上がると、パソコン仕事全般が早くなります。たとえばエクセルを作るにしても、ワードで文字を書くにしても、タイピング能力です。また、パワポ作成も早くなります。

たとえば、以前勤めいた会社では、人差し指でタイプする人がいましたが、仕事が早いとは言えませんでした。私の経験ですが、一刺し指でタイピングする人と、すべての指を使ってタッチタイピングする人では5倍くらい差が出ます。

タイピングが遅いと、仕事をこなす速度が上がりません。ですので、まずはタイピングを覚えることが大切です。

上級者になるには、マクロ作成の速度をあげることが大切

初心者がマクロを作成する場合、誰であっても時間がかかってしまいます。プログラムを見よう見まねで作るため、慣れない内は何度もエラーが出るでしょう。そのため、プログラムを書いては修正することになります。これは誰もが通る道です。逆にここを乗り越えないと、マクロを使えるようにはなれません。

ただ大切なのは、プログラムを作るスピードを上げることです。マクロを作るスピードが上がれば、ミスが10回あったとしても、すぐに修正できます。しかし、マクロを作るスピードが遅いと、ミスが10回あると、一つのミスを修正するのに、時間がかかってしまいます。

ですので、マクロの操作をできる限り早くすることが大切です。作成速度が上がれば、たくさんのプログラムを作ることができるようになります。たくさんプログラムを作る内に、ミスの数も減っていきます。

結局のところ、量をこなすことで質が高まります。プログラムを作れば作るほど、マクロの資産が増えて、どんどんプログラムを作るスピードが上がります。これを理解した上で、地道に努力を続けていくことが大切です。そうすることで、次第にレベルの高いプログラムに出会ってもすぐに使いこなせるようになります。

こちらの記事で紹介した内容をさらに深く学びたい方は、こちらの無料動画講座がオススメです。エクセルマクロの全体像から上手な書き方まで詳しく解説しています。ぜひご覧になってください。

この記事を読んだ方へのオススメ

この記事を読んだ方は、こちらもオススメです。ぜひ合わせて読んでみてください。

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

www.fastclassinfo.com

エクセルマクロを独学で学ぶコツを知りたいなら

www.fastclassinfo.com

エクセルマクロでできることを知りたいなら

www.fastclassinfo.com

パソコンを効率的に使うワザを知りたいなら

www.fastclassinfo.com