オブジェクトブラウザーは VBA のオブジェクト構造を記述したものである.しかし,EXCEL 全体のオブジェクトモデルを一覧できるような機能はない.今回,全く別領域のソフトウェアを用いて EXCEL のオブジェクトモデルを表現してみたので備忘録として公開する.
Microsoft Internet Controls のクラスとメンバーを列挙する
Internet Explorer を VBA から操作する際に参照するライブラリは Microsoft Internet Controls である.オブジェクトブラウザーからオブジェクトを抽出してみた.
抽出作業そのものは単なるコピペである.自動で抽出する方法はないものだろうか.
Microsoft ActiveX Data Objects 2.8 と 6.1 を比較する
ADO はバージョンにより微妙にクラスが異なる.オブジェクトブラウザーからクラスとメンバーを抽出して比較してみた.
Word ドキュメントの規定の Office テーマを VBA から指定する
Word の規定のテーマはマクロ記録できない.EXCEL ならできる.Power Point はマクロ記録自体が廃止されている.EXCEL の記録を流用してみた.
Microsoft 公式サイトから列挙体のテーブルをインポートする
既知の情報だったら申し訳ないが,個人的に印象的だったので備忘録として公開する.これまではオブジェクトブラウザーからコピペしていたのだが,公式サイトから Power Query でテーブルをまるごとインポートできるようだ.
Word のスタイルをマクロ記録する
『エンジニアのためのWord再入門講座』を読み進めている.スタイルの扱いが重要であることは分かった.惜しいのは,VBA のオブジェクトからの視点がないことである.筆者の主観ではオブジェクトの視点があると理解が早まる気がしている.完全に自分のための備忘録である.
EXCEL VBA で既存のテーブルにネットワークドライブ上の Workbook からデータを追記する
前回の記事ではフォルダーから一括してデータを読み込む方法を紹介した.今回は月次の更新ファイルを読み込んで既存のテーブルにデータを追記する方法を紹介する.
既に読み込んだファイルは拒否したい.監査としてのワークシートが必要だ.リレーショナルデータベースならデータの一意制約から可能だが,EXCEL では自前で作る必要がある.
色々と挑戦しがいのある課題であった.
“EXCEL VBA で既存のテーブルにネットワークドライブ上の Workbook からデータを追記する” の続きを読む
EXCEL VBA でフォルダ内のブックを開きデータを読み込む
Power Query が使えないと不便である.先日 EXCEL 2010 の素の環境でフォルダ内のブックをすべて開き,データを読み込む必要があったのだが,Power Query が使えなかったため,VBA でブックを開いて読み込まなければならなかった.備忘録としての記事である.
この記事はPower Query でフォルダから複数ファイルを一括インポートすると対応している.やっていることは同じだが,.xls 形式だとクエリの検証に時間がかかるため,VBA で読み込んだほうが動作は早いかもしれない.
フォルダー内のファイル一覧を取得するには FileSystemObject を使う場合と Dir() 関数を使う方法とがある.ここでは FileSystemObject を使うことにする.
データは Range オブジェクトに格納されているため,Range オブジェクトを取得するのが当面の目標となる.
EXCELのグラフの軸の書式設定でハマる
オブジェクトブラウザーは VBA の羅針盤である.しかし時に役に立たないことがある.今回はグラフの軸の書式設定でハマった経緯を備忘録として記しておく.
EXCEL VBA でピボットテーブルの挿入を記録する
ピボットテーブルは EXCEL に初期から搭載されている分析ツールである.ピボットグラフで未だに散布図が描けないという致命的な欠陥があるが,それでも有用なツールであることに変わりはない.
今回の記事はコードの整形ができていない.PivotTable オブジェクトのプロパティが膨大で手がつけられなかったためである.時間がある時に取り組みたい.