久しぶりの更新です。
もうお金を費やして勉強するという余裕がないので独学です。

そしてそもそもこのPCにはExcelが入ってません17.gif

けど大丈夫?!
先輩方には会社の業務で使ってたら出来るようになったという方々が数名。
かくいう自分も業務の必要に迫られて勉強するようになりました。

Excelにもいろいろある

まず、ひとえにExcelといっても関数とかグラフとかテーブル作表とかいろいろあります。
その中にもっと柔軟にやりたいことを簡単に出来るようにするプログラミングの機能があります。

それがマクロです。

グラフとか作表はそれ自体あまりやったことがないんで難易度が解りません。
なのでExcelの中ではマクロが一番難しいんじゃないかと思ってます。

なぜそこに挑もうとしたのか。

Excelでやりたいことが複雑すぎて関数とかだけではできないから

ただそれだけ。

けど、マクロが出来るようになるには必然的に関数も覚えなきゃいけない。
てことで総合的な理解が出来るようになると思ってます。

始め方

今までと違って今回は独学です。
そんでいまだやりたいことが完成してないので同時進行で記録していきたいと思ってます。

ただ、最初何も考えずに本を数冊買って読んでただけでした。
そしたらなんのこっちゃさっぱりわからず。

挫折したのが数年前。

今再びやろうと思ってなんとなくわかってきたのはゴールとして何をやろうとしてるか、やりたいかってことが見えてきたから。

この、マクロを使って何をやりたいかっていうのがないとなかなか習得できないと思います。
これはExcelに限らずですけど。

例えばそれは関数ではできないのか、とかいろいろ方法を考えるわけです。
そしたら関数だけでは足りないとか、もっとここをこうしたい、とか出てくるとそのポイントポイントを調べるんです。

調べるとこういう記述をするといいよっていうマクロのサンプル記述がいろんなサイトで書いてくれてます。

例えばオートフィルなんて言うのはマクロでなくてもできるんですが、これを組み合わせて複雑な表を作りたいんです。なのでまずはオートフィルのマクロを探します。

 
Sub 月のオートフィルマクロ例()
Range("A1") = "1月"
Range("A2") = "2月"
Range("A1:A2").AutoFill Destination:=Range("A1:A12")
End Sub

すると上記のような記述があらゆるサイトで見ることが出来ます。
始めてみるとなんじゃこりゃ。ってなりますよね。

マクロ習得のポイント1

実は記述の基本は英語。

これ大事ですね。
海外にも英文学にも興味がないのに自分が英語を勉強してきたのは実はこのためだったんじゃないかと思えてきました。

英語だったらなおさら無理だとは思わないで大丈夫。
Excelのマクロの記述箇所には入力支援機能がついてます。
「R」と入力すれば候補としてRangeが出てきて選べるようになるってことです。
なので細かいスペルとかまで覚えなくていいってことです。だいたいでいい。これ大事。

ポイント2

記述の型はとりあえず数パターンを覚えるだけでいい。

Sub ()
End Sub

例えばこの部分は必須です。
こっからここまでがマクロのひと固まりです。

こういうやつの何パターンかを覚えるんです。
よく使うのは決まってくるので、そこから足していけばいいと思ってます。

ポイント3

.(ピリオド),(カンマ)=(イコール):=(コロンとイコール)

記述には上記の記号を使います。
これがいまだによくわかってないんですがこのポイントが解ればグッと理解が深まるかと。

要するに英語で言う文法みたいなもんです。

なにをどうする。どんな条件で。

という言葉を用語でつないでいくっていうだけのこと。
間違っても大丈夫。
エラーになるだけです。(←イマココorz.gif

 

簡単なマクロだったらすぐにできるようになると思います。
ただ、そのマクロを組み合わせて複雑な処理を可能にしたいと思ってるんでそのためにどうするのかっていうので苦心してます。

まずは簡単なやつできるようにならないとね。