エクセルでデータ収集を行うための準備
※2018/11/12 保存形式、32bit, 64bit版について追記
この小説ではエクセルでデータ収集を行います。
エクセルでデータ収集するためにVBA(Visual Basic for Applications)を使用します。
そのために今回の説明では必要な設定をしていきます。
またエクセルのバージョンは2016, 2019を想定しています。
「今回は収集前にエクセルの設定をしようか」
「準備ですか?」
「そう、エクセルでデータ収集をする場合VBA(Visual Basic for Applications)でプログラムを組む必要がある」
「プログラムですか……」
「もちろんエクセルじゃなくても別のプログラム言語でもできるよ。でも他の言語だとハードルが高かったり、プログラミングアレルギーの人もいるから、なるべくハードルが低いものを選んだよ。エクセルだと利用人数が多くてハードルが他のよりも低いんだ。※1
あたりまえだけど、今回説明する方法だけじゃなくて他のやり方もいっぱいある。プログラムが出来る人は他の言語でやってもいいし。この機会にプログラミングの勉強をするのもいいかもしれないね」
「プログラミングって聞くとすごく難しいイメージなんですが……」
「そういう人のために、今回の講座では例題やプログラミング例も用意したよ。なるべく最小限の労力で済むようにしているから、気楽にやってね」
「はーい」
「ではまずはExcelの準備ね。プログラミングをするためにはちょっとした準備が必要なんだ。それについてまず説明するよ。
まずツールバーの[ファイル] -> [オプション] -> [リボンのユーザー設定]のメインタブで開発にチェックを入れてね。(ついている人はそのまま)これでプログラム用のタブが出てくるよ。
次に開発タブの[VisualBasic]をクリック。VBE(Visual Basic Editor)を立ち上げてね。エクセルでプログラムを書くのはここになるよ。
じゃぁ次に標準モジュールを追加して、そこに以下の宣言文を追加してね。
『Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)』
(Sleepを使うためのものです。これで1秒以上の間隔を強制的にあけます)※2
それが終わったら、イミディエイトウィンドを立ち上げておいてね。このウィンドウはプログラムが上手く動いているかの確認用に重宝するよ。
ということで準備が終わったよ。ここまで大丈夫?」
「う、なんとか大丈夫です」
「それじゃぁ、そのファイルを保存しようか。このファイルがもとになってくよ。ファイルの拡張子はxlsmにすること。そうしないとプログラムが使えないので注意」
「むむむ、できました!」
「じゃあ準備もできたし、次回からは本格的にデータ収集をしていくよ」
「はい!」
※1 言語によってはプログラムするための環境設定だけで挫折するものもあります。
エクセルは標準で付属していることが多く、高校の授業でも触れるのでその分のハードルが低くなります。
※2 32 bit版です。64 bit版をインストールしている人はエラーが出ると思うのでその場合は
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)
にしてください
基本的に32bitでインストールされるので気にすることはありません。自分で選択しない限りは64bitにはなりません。通常の使用では32bitで問題ありません。
確認はgoogleで『64bit office 確認方法』と打ち込むと出てきます。
※64bit版を選択する理由(公式より引用)
複雑な計算、多くのピボットテーブル、外部データベースへの接続、Power Pivot、3D マップ、Power View、取得と変換などが含まれるエンタープライズ規模の Excel ブックなど、大きなデータ セットを操作する場合。64 ビット版の Office では、このようなケースにパフォーマンスが向上する可能性があります。
次回の更新は11月24日を予定しております。