Ext JS に関しては,新しい記事は Sunvisor Lab. ExtJS 別館 にあります。そちらもよろしくお願いいたします。

Access

MS-Accessのレポートをページ毎にPDF化する

 仕事で通知書をPDFで作ってメールで配信しようと言うことになって,Access のレポートで通知書を作ることにしたのですが,ページ毎に別のPDFファイルにするのを手作業でやっているとめんどくて気が狂うので自動化を考えてみました。

外のツールを使わないでもできるように今回は Access 2010 を使いました。たぶん,2007でも動作します。

最初に考えて実行したのは次のコード

DoEventsをうまく使う

AccessのVBAで時間のかかる処理をすると,画面が更新されなかったり,Windowsから(応答なし)扱いされたりします。それをさけるためには,DoEventsを呼び出すのですが,なにも考えずに呼び出すとパフォーマンスが大幅に低下します。これをなんとかしようという試みです。

VBAからデータリンク プロパティ ダイアログを表示する

ExcelやAccessのVBAから,データベースへ接続する際にADODBのConnectionオブジェクトに渡すためのConnectionString(接続文字列)を用意する必要があります。これをGUIを使って得ることができるのが,データリンク プロパティ ダイアログ です。

これを利用するには,拡張子UDLのファイルを作ってダブルクリックするとダイアログが表示されます。設定を完了してOKをクリックした後のファイルをエディタで開くと接続文字列が格納されていますので,それを利用します。このダイアログをVBAのプログラムの中から呼び出せないでしょうか。

Access VBA のInStr関数がおかしい

InStr関数の戻り値がおかしい。AccessのVBEを起動してイミディエイトウィンドウで試してみてください。

ちょっと使える関数ライブラリ(1)

Accessなどで使える,VBAの関数で,ちょっと使えるものを載せてみました。

コンテンツ配信