先日、以下の記事を投稿しました。
この記事を読んだ方や、マクロを勉強したい方は、
と思っているのではないでしょうか。今回はそんな疑問にお答えします。
今回紹介する勉強方法は私が実際に行っていた勉強方法です。
参考になりましたら幸いです。
おすすめの勉強方法は?
おすすめの勉強方法は、知りたいことをGoogleで検索する方法です。
「それって勉強方法なのか?」と思われるかもしれませんが、マクロって色々な動作ができる反面、基礎から学ぶとかなりの時間と労力を必要とします。
ですので、今あなたがしたいことをGoogleで検索し、そこの例文をコピーしましょう。
最近は優秀なブロガーの方が多く、検索するといろんな方が解決策を示してくれます。
そこから知識を蓄えていきましょう。
実際にどうやるのか?
例えば「Excelのデータをpdfにしたい」のであれば、
「Excel」「マクロ」「pdf化」
と検索しましょう。そうするとたくさんのpdf化に関する記事がヒットします。
次に複数のサイトの例文をコピーし、見比べます。すると、同じ「pdf化」の動作でもサイトによって表現が違います。実際に例を挙げると
Aサイト
Dim FN As String
FN = ThisWorkbook.Path & "\xxx.pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FN
Bサイト
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="c:\xxx.pdf", Quality:= xlQualityStandard
のようにAサイトは3行、Bサイトは1行になっています。
ですが、よく見ると全く同じ表現が使われている箇所があります。(黄色い網掛け)
つまり、黄色い網掛け部分は「pdf化」に必要な表現であることがわかります。
次に、そのほかの部分についてみてみましょう。
Aサイト
Dim FN As String
FN = ThisWorkbook.Path & "\xxx.pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FN
Bサイト
緑の網掛け部分の表現がAサイトとBサイトで違いますが、よく見るとAサイトには2行目に
「FN = ThisWorkbook.Path & "\xxx.pdf"」
の記述があります。
つまり、Aサイトの2行目の「FN=」以降を3行目の「FN」に代入すると
Aサイト
Dim FN As String
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\xxx.pdf"
となり、Bサイトと似た形になってきました。
ここまでくると、あとは以下の青色の網掛け部分のみとなります。
Aサイト
Dim FN As String
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\xxx.pdf"
Bサイト
これらについては、例文をコピーしてきたサイトの説明文を確認するか、Googleで検索をしてみてください。
ちなみに青色の網掛け部分は
- Dim FN As String ⇒ FNを変数とします
- ThisWorkbook.Path ⇒ このExcelが保存されているフォルダのパス
- & ⇒ ThisWorkbook.Pathと"\xxx.pdf"をくっつける
- Quality:= xlQualityStandard ⇒ pdf化するときの画質の設定(なくてもよい)
という意味です。
このように複数のサイトの例文を見比べることにより、「pdf化」に必要な構文はもちろんのこと、周りの記載内容についても理解することができます。
この方法を繰り返し行うことで、あなたの知識は確実に増えていきます。
最後に
冒頭にも述べましたが、マクロは様々な業務を行うことができる反面、習得するまでには時間と労力が必要となります。
ですので、基礎から順番に学んでいたのでは、いつまでたってもマクロを使うことができません。
「関数が使えるからマクロはいいや」とは思わず、今回紹介した方法で勉強をしてみてください。きっと、あなたの業務スピードが上がります。
また、周りからの評価も変わってくるはずです。
今回の記事がマクロを勉強するきっかけになってくれたらうれしいです。