Excelは記録マクロを使いこなせ!

皆さんはExcelを・・お使いになりますか?

私はといえば・・Excelで見積書や請求書・・備品購入リスト等・・ほとんどの作業をExcelで行っています♪

Excelは・・本当に多機能ですよね・・数式はもちろん関数やマクロまで・・。

全てを使いこなすのは、とても難しいものです。

繰り返し作業は・・。

作業にもよりますが・・Excelで繰り返し同じような操作をする事って・・ありませんか?

私はよくあるんですよ・・というか・・ほとんどが繰り返し作業と言っても・・いいかも♪

しかし・・それって面倒ですよね・・そういう繰り返し操作はマクロ化するのが良いのでは?

え・・マクロって難しそう・・そうなんですよマクロはハードルが高いんですよね・・。

記録マクロを活用

Excelには記録マクロという機能が・・♪

記録マクロとは・・[開発タブ]の[マクロの記録]をクリックし、必要な操作をすれば操作の内容を記録してくれる・・そんな機能です。

この記録マクロを上手く使えば・・作業時間を大幅に短縮できます(^-^)

記録マクロにチョイ足し

記録されたマクロを実行しても・・記録した通りの動作でしか動いてくれません・・当たり前ですが(-_-;)

いくら同じ操作を繰り返すと言っても・・対象のセル等がその都度変わるもの・・。

そこで記録マクロで出来上がったマクロコードに少し書き足すことで・・そこのところをクリアしようと♪

最初からマクロを手で書き出すのは・・かなりハードルが高いですが、これだと必要最小限のところだけ覚えてしまえば・・。

実際に記録マクロを使ってみる

ここからは・・実際に記録マクロを使った作業を、行ってみようと・・あ・・その前に・・私の使っているExcelのバージョンは・・Excel2009・・なので皆さんがお使いのExcelとメニュー等が少し違うので、お手持ちのExcelのバージョンに読み替えて下さい・・ゴメンナサイ<m(__)m>

作業例として・・約590行のExcelファイルを見やすくするために・・1行ずつ空白の行を入れる・・そんな作業を想定してみますね♪

作業内容

マクロの記録

まずは・・マクロを記録するために、リボンの開発タブを選択してください♪

もし・・開発タブが表示されていない場合は、[Excelのオプション]から表示するよう設定の変更が必要です(^-^)

開発タブの表示方法

開発タブが表示されたら・・開発タブを選択し[マクロの記録]をクリック・・すると[マクロの記録]ダイヤログが・。

マクロ名には適当な名前を(今回はMacro1を)・・マクロの保存先は「作業中のブック」を選択し[OK]をクリックします。

ここからマクロの記録が始まります♪

記録マクロの開始方法

絶対参照と相対参照

マクロを記録中で注意が必要なのが・・絶対参照と相対参照・・これってセルの選択方法の違いで・・(-_-;)

絶対参照とは・・セルA1は必ずA1となります・・それに対して相対参照は・・現在のセルから縦横にいくつ動いたかという記録に・・(^-^)

今回だと・・まずセルA2を選択・・その後相対参照に切り替え3行め全体を選択・・。

セルA2を選択後相対参照で記録

次に3行目に左クリックで[挿入I]を・・3行目に新たな行が追加されたらセルA4を選択し[記録終了]をクリック・・。

3行目に行を追加後セルA4を選択し記録終了

Excelマクロの記録操作は以上で終了♪

VBAエディター

Excelのマクロは・・VBAエディターのModuleというところに記録されています♪

では実際どうやって記録されたマクロを見るのかというと・・。

[開発タブ]のマクロをクリック→マクロダイヤログでマクロを選択[編集]をクリック。

するとVBAエディターが起動し記録したマクロを見ることができます♪

VBAエディター

記録されたマクロを詳しく見てみると・・。

作成されたマクロ

という内容が・・ではマクロ本文を、ひとつひとつを見ていくと・・。

1行目・・Range(“A2”).Select・・・・・絶対参照でセルA2を選択

2行目・・ActiveCell.Offset(1, 0).Rows(“1:1”).EntireRow.Select・・相対参照で1つ下の行を選択
3行目・・Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove・・1行挿入

4行目・・ActiveCell.Offset(1, 0).Range(“A1”).Select・・相対参照で1つ下のセルを選択

以上になります♪

繰り返し操作をチョイ足し

ではこのマクロにどのようにチョイ足しすれば・・(-_-;)

1行目のRange(“A2”).Selectは絶対参照なので・・この行を繰り返せば同じところをグルグルと回ることに・・。

2~4行目は・・相対参照なので繰り返し実行しても問題なさそうですよね・・なので繰り返すのは2~4行目ということに♪

このマクロを実行すると・・最初にA2のセルを選択し最後はA4のセルが選択されています・・最後に選択されたセルが一つ下のセルに移動しています(^-^)

そうすると繰り返し実行していると・・いつかは空白のセルを選択することになります♪

変数を使おう

変数ってご存知でしょうか?

学生の頃、数学で・・X+Y=Zなんて公式を教わりましたよね♪

この・・XやYが変数になります・・Excelのマクロでも変数が使えます!(^^)!

Exselの変数は・・数字以外にも文字や日付け等が使えます。

そこで・・1行目と2行目の間に・・dat1=Application.ActiveCellと記入・・これはdat1という変数に現在選択されているセルの内容を記憶する事に・・。

そして最後の行にも・・。

変数を追加

Do Until ~Loop

今度はどうやって繰り返し実行するのか?

Excelマクロで繰り返し実行するには・・Do Until ~ Loopというものが・・。

Do Until ~  Loop

Do Until ~ Loopは・・条件式が成立するまでLoopまでの動作を繰り返すという物・・。

なので・・2行目と3行目の間に・・Do Until dat1=””と買い込む・・これはdat1が空白になるまで繰り返すという事・・空白を指定するときは「””」と記載する♪

そして最後の行にLoopを・・。

Do Until ~  Loop

これでチョイ足しは完了♪

出来上がったマクロを実行

さて・・ようやくマクロが完成しました・・お疲れ様です

では・・早速マクロを実行してみましょう

どやって実行するかというと・・[開発タブ]→[マクロ]をクリック

マクロダイヤログで・・Macro1を選択し[実行]をクリック

マクロの実行

すると・・目にもとまらぬ速さで・・Excelが動き出す♪

マクロの実行速度は、お使いになっているPCのスペックによりますが・・私が使用しているタブレットIdeaPad D330のCPUは・・Celeron N4000でお世辞にもハイスペックとは言えません(-_-;)

それでも・・ね♪

マクロを使えば作業時時間を短縮

Excelのマクロは・・なんか難しそう・・なんて思っていましたが意外と簡単に利用できます♪

もちろん・・もっと複雑なことになると・・。

しかし・・これで面倒な作業が・・一気に終わってしまいます♪

何よりも高速で動くExcelを見ていると・・俺PC使いこなしてる感・・半端ありません(^-^)

成れることが大切

物事は「習うよりも慣れろ」と言われています♪

Excelのマクロも同じです・・こまごまと使えるマクロを作り続ける事で、大掛かりまものが作れるようになるかもしれません♪

記録マクロを活用し・・作業時間を短縮できれば・・その分プライベートを充実させることができるかもしれませんね♪

コメントを残す

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