エクセルマクロの挫折しない勉強法や仕事で使いこなすコツを徹底解説!
講師の寺澤さんはこれまでの20年間マクロを使って様々な業務を効率化させるなど、数多くの社内表彰を受けてきました。例えば、数十万行の元データから分析用データを毎週作成する作業。人の手だと1週間かけても終わらない作業ですが、マクロを使うと30分程で完成してしまいます。さらに自ら社内講座も主催、全くマクロを触ったことがない数百人を指導し、満足度98%と人気を博しています。近著『4時間のエクセル仕事は20秒で終わる』では、そのエッセンスを余すところなく紹介しています。
本連載では、エクセルマクロを仕事で使うための本当に必要な知識だけを、できるだけわかりやすく説明していきます。
セルを選択するもう一つの方法
前回解説したRangeは“E3”のように選びたいセルを直接的に記載するわかりやすい方法です。
一方ここで学ぶ「Cells」の書き方は少しわかりにくいです。
同じE3セルを選ぶには次のように書きます。
Cells(3, 5).Select
この(3, 5)の意味は「A1を(1, 1)として下に3、右に5進んだ場所」です。A1を含んでカウントします。
RangeのE3は青矢印のように「右にEまで進んでから下に3進む」と表しています。一方Cellsは赤矢印のように「下に3進んでから右に5進む」という表し方をしています。そこで僕は「E3というセル表記とCellsは順番が逆だ」と覚えています。
Cellsが必要な理由
「セルE3を選択するならば、Rangeは“E3”と直接書けるのでCellsに比べると圧倒的に簡単。Rangeだけ知っておけばよいのではないか?」と思われた方もいるかもしれません。僕も最初はRangeだけで十分と思っていました。
しかし、やりたいことが増えると、マクロが少し複雑になります。例えば「最初の処理はあるセルで行い、次の処理はその2つ隣のセルで。その次はさらに2つ隣のセル......」という作業を考えてみましょう。
Rangeを使うと「はじめの処理はA3で、次の処理はC3......」とマクロ上で直接セルを指定しなければいけません。100回処理させようとすると、セルを100回指定する必要があります。一方Cellsを使うと、これを圧倒的に効率化できます。
今後この講座で紹介しますが、このケースでは「Cells(3, i).Select」のように i という文字を使います。そして「はじめに i に1を入れ、1回処理が終わるたびに i を+ 2する」としておけば、何度もセルを指定する必要がありません。このようにCellsを使った方がよいこともあると覚えておきましょう。
完成させて動かしてみよう
「セル選択 2」という名前を付け、マクロを書きましょう。
ボタンに登録し、保存した後に押してみてください。「練習」シートのE3セルに移動すれば成功です!
1 Cellsが複数形ではなくCellになっている
2 Selectの前に.(ピリオド)がない
3 Selectの綴りが違う
(本稿は、寺澤伸洋著『4時間のエクセル仕事は20秒で終わる』を抜粋、再構成したものです)
寺澤伸洋(てらさわ・のぶひろ)
1976年、大阪府生まれ。灘高校、東京大学経済学部卒業後、日系メーカーで17年間勤務。経理や営業、マーケティング、経営企画などに携わり、独学で覚えたエクセルマクロを用いて様々な分析や業務改革を行う。2017年、GAFAの日本法人のうちの1社へシニアマネージャー(部長)として転職。これまでエクセルマクロを用いた業務改善などで数多くの社内表彰を受けている。手作業では不可能なほど大量のデータを、短時間で分析しやすく加工したことが評価され、社内エクセルマクロ講習会の講師として延べ200人以上に講座を実施。エクセルマクロについて1から10まで教える詰め込み型の学習ではなく、仕事に必要な部分だけを効率的に学べる講座として満足度98%の高い評価を受けている。