あらきけいすけのメモ帳

あらきけいすけの雑記帳2

Microsoft Excel について

業務用の覚書。書きかけ。

Excelの利点

  • (多分、職場の)誰もが Excel を持っている。Excel ファイルとちょっとましなマシン(Core i7 + 8GB RAM とか)があればどこでも作業できる。(業務遂行に関して自由度が上がる)
  • (多分、実用的には、項目数が50以下、レコード数が10,000以下程度なら) WYSIWYG のデータベースとして使える。つまりクエリを投げずに直に検索, 置換, 編集ができる。とくに「フィルター*1」と「ウィンドウ枠の固定*2」は操作が直感的でいい。
  • オンプレミス*3で運用できる。(これはGoogleドライブにはできない)
  • プログラム(VBAマクロ)を書いてデータ操作ができる。(ただし Visual Basic for Application は動作がもっさりとしている。特にスレッディングができない*4。)
  • (たしかに PythonPHPExcel ファイルを操作できるライブラリはあり、そっちの方が高速ではあるのだけれど、Excel とは別のプログラミング環境を導入する必要がある…というのは、可搬性に関わる敷居が高いことを意味していると思う)
  • Excel ファイルにデータを書き出せる(データファイルとアプリケーション実行環境の「閉じた(複数にまたがらない)」エコシステムである。)
  • VBA には「連想配列( Scripting.Dictionary オブジェクト)」*5があるので Key-Value 的なコードが書けなくもない。これは重複検出に便利。
  • VBA は変数名にマルチバイト文字*6が使えるので、テーブルの項目名を変数名に使うとかできちゃったりする
  • Excel VBA 使いがいれば、外注するよりコミュニケーションの時間コストを下げることができる

コーディングの注意点

Excel VBA による Excel ワークブック/ワークシート, CSVファイル, XMLファイル等のデータ処理の進行は、HTMLベースのWebアプリケーションに似ていてイベント(Excel内のボタン操作など)によってコードが駆動される。