Excelマクロでの記述をトレーニング中。
かんたんではありませんが、日々手応えを感じています。
Excelマクロに挑戦!
インプット<アウトプット
学んだ以上に実践することで、自分のチカラになります。
今回、挑戦したのはExcelのマクロ。
マクロを使えば、データ量が膨大で1日仕事になるような繰り返しの処理があっても、わずかな時間で終わらせることができるというもの。
1年前にはマクロが何なのかもよくわからなかったんですけどね。^^;
やりきったら記事にとは思っていましたが、マクロは深すぎて、それだといつになったら記事にできるかわからないので、マクロビギナーとしてやってきたことをまとめてみました。
マクロで何ができるのか その前に設定変更を
Excelでマクロを記述するには、まずは設定の変更が必要です。
設定を変更して【開発】タブを表示させる
まずは、ファイル→オプションをクリックし、
リボンのユーザー設定をクリック。
開発にチェックを入れておきましょう。
あと、セキュリティの設定もしておきます。開発タブのマクロのセキュリティをクリックし、
「警告を表示してすべてのマクロを向こうにする」にチェックを入れておきましょう。
VBEの起動→マクロの記述
記述にはVBEというツールを使います。
ショートカットキーでAlt+F11を同時に押すと、VBEが起動します。
次にマクロを書くための標準モジュールを表示させます。
Alt→I→Mの順番でクリックしてみましょう。
記述するためのモジュールが表示されました。
ここにマクロを書いていきます。
試しに。書き出しは「Sub マクロ名」、ここでは「Sub sample」とし、
Enterをクリックすると、
1 2 3 |
Sub sample() End Sub |
と自動で表示されました。
このSub sampleとEnd Subの間にマクロを書くことになります。
例えば、
「A3セルに100を表示する」だと、Range(”A3″)=100
「B4セルは赤く塗りつぶして」だと、Range(”B4″).Interior.color=vbred と記述して、
F5をクリックするとVBEでマクロが実行されて、A3セルには100が表示されて、B4セルは赤く塗りつぶされました。
記述が間違っていると、赤く反転するため、記述が間違っていれば気づきます。
ただし、マクロは実行したあとでのやり直しができません。Ctrl+Zが効かないのです。
そのため、実行前にはCtrl+Sで保存をしておきたいところです。
これをやっていなくて、指定のセルが間違っていましたが、記述自体には問題がなかったので、実行後に間違いに気づきやらかしました。
実行前には必ず保存です。
毎朝同じ記述を繰り返す
マクロの記述は、通常のExcelと内容が違うため、どう記述したらいいのかわからないというのが、正直なところ。
セミナーの資料や購入した書籍にある記述を参考にしながら、もうすぐ1ヶ月、日々同じ記述を繰り返しています。
昔、英語の構文をたくさん丸暗記したのですが、あのイメージですね。
記述しているのはこんな感じのものです。
リーダーのシートに店名とリーダーが表示されています。
この表にリーダーは店舗をキーにしてVlookupで、そして、ランクは売上が100万円以上ならAランク、それ以外がBランクという表示をさせたいといった場合のマクロとして、
こんな記述をしてみました。書き方は人によって違ったりするようです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Sub sample() 'リーダー名表示・ランク集計 Application.ScreenUpdating = False Dim i With Sheets("売上") For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row '店舗名からリーダー名を抽出して表示する .Cells(i, 4) = WorksheetFunction.VLookup( _ .Cells(i, 1), Sheets("リーダー").Range("A:B"), 2, 0) '100万円以上はAランク、100万円未満はBランクとして表示する If .Cells(i, 3) >= 1000000 Then .Cells(i, 5) = "A" Else .Cells(i, 5) = "B" End If Next End With End Sub |
ifやVlookupはマクロではこういった記述になります。
こういったものだと、なんとなく感じていただければ。
記述したマクロは、F5をクリックすると、(F8だと1つずつ実行されます。)一瞬でリーダーとランクが表示されました。
マクロビギナーとして、セミナーを受けて、そのあとに実践するというパターンはよかったと感じています。
まず、井ノ上さんのExcelマクロセミナーを受講して、マクロがどういったものか概要を把握するところから。
セミナーに参加することで、書籍にはあまり書いていないような記録マクロについての考え方なども聞けて、これは独学だけでやっていたら、おそらく認識できていなかったでしょう。
最初はまったくわからずとりあえず真似して記述してみるのですが、毎日記述しているとなんとなく見えてきます。
そのうち、何も見ないで入力できるようになるのですが、ときどき何かが抜けていたりして、マクロが実行されないこともしばしば。
ただ、上達の近道は、真似してやってみる、間違えながら覚えていくことでしょう。
最初はまったくできなくても、日々のトレーニングをすることで、少しずつ慣れてくるのは、何でも同じかと。
イメージが今ひとつ沸かない、自分でやるのに敷居が高い、と感じるなら、こういったものを一度見てみるのもおすすめです。
私もひととおり見てイメージしてから、VBAを学んでいます。
【編集後記】
昨日は事務所で法人の申告を。その後は自分の仕事。昨日は昼間にブログを更新。たまには変えてみるとまた違った感覚が味わえていいものですね。