エクセルVBA 集計ファイルの作り方②
どうもhiroakiです。
先日、下記の記事を書きました。
コードの中身が分からない人のために、解説していきたいと思います。
~初心者のために~
ここでは、初心者のために分かりやすく解説していきます。
とはいうものの、私も特にプロじゃありませんので(笑)。
間違っているところや、不細工なコードになっているかと思います。というかこれから説明していきますが、結構雑に書いてます。その点はご了承ください。
また、一から説明していくので、必要でない箇所は都度飛ばし読みするなどしてご活用ください。
準備①標準モジュールを開きます
まず、開発タブ(表示されていない方はオプションより設定変更してください)にあるVisualBasicを開きましょう。
挿入タブより標準モジュールを開きます。
開いたら、そこにコードを書いていきます。
準備②名前をつけてあげましょう
マクロを作るには、まず名前を付けてあげなければいけません。
名前は、Sub半角スペース名前()で付けてあげます。
その後、エンターを押すと、End Subと勝手に表示されますが、これはsub 開く()というマクロがどこまで続くかを指定するものになります。
つまり、sub () ~ end sub までがひとつのコードなんだなとイメージを持ってください。
- Sub 開く()
- End Sub
と、いうことで。
ちなみに私は、開く()というマクロ名をつけましたが、これは変だと思います(笑)適当な性格がバレますね。
実際は、データ集計()などの名前を推奨いたします。
準備③コード例をコピぺしましょう
次はそこに、コード例を張り付けしてみましょう。
コードは以下のサイトより、コピペしてしてみてください。
実際に自分のフォルダに保存してみて、動くかどうか確認してみてください。
よろしいでしょうか。
内容 Dim ~ As ~
ゆっくりやっていきますね。
まず、1から7行目まで。
- Sub 開く()
- Dim name As Range
- Dim name_worksheet As String
- Dim hanni As String
- Dim fn As String
- Dim wb As Workbook
- Dim n As Integer
Dim ~ As ~についてです。
ここでは変数の定義を行っています。
なんだか難しいですね(笑)
実はVBAというのは、一種のプログラミング言語です。この前提から押さえてもらわないといけません。
プログラミングには、変数と定数というものがあります。
ざっくり言うと、変数は変わるもの。定数は変わらないもの。です。
数学でやりましたね(笑)それと同じです。
少し詳しく説明すると、
Dim~ は、Dimensionは「次元」
As~は、「~として」
を意味しています。
ここでは、これから使おうとしている変数が、どういう種類のものかを【Dim 変数名 As データ型】の形式で、あらかじめ指定してあげます。これを変数の宣言と呼びます。
この記述によって、どれくらいメモリの容量を確保しないといけないか、あらかじめ決めてしまうのです。
とにかく、コード内で変数を使う場合は、初めに【Dim 変数名 As データ型】の形式で、宣言をしなければいけません。
しっかりと覚えときましょう。
~変数名について~
ちなみに、上のnameとかhanniとか全く適当です。つまり変数名は基本的になんでもいいです。これは、イメージとしては、ラベリングみたいなものだと思ってください。
ただ、どんなものか分かりやいような名前にした方が良いとは思います。
~データ型について~
今回はRangeとString、Workbook、Integerのデータ型が出てきていますね。
Rangeは範囲のこと。
Stringは文字列のこと。
Workbookはワークブックのこと。
Integerは整数のこと。
要は、
この変数には範囲を入れますよ~
この変数には文字を入れますよ~
この変数にはワークブックを入れますよ~
この変数には整数を入れますよ~
と宣言しているってことです。
他にも、よく使うデータ型がありますので、今後も色々と作ってみたい、という人は、いくつかこんなものがあるんだな~程度に覚えておいていただければ結構です。
詳しくは下記サイトなどを参考にしてもらえばいいです。
https://www.tipsfound.com/vba/02008
今回はここまで~
今回はここまでとします。
基礎的なことなので、さっと進めましたが、もっと詳しく知りたい場合は、コメントなどくだされば解説したいと思います。
次回からはコードの中身を詳しく解説していきます。
では。