2010年11月29日月曜日

リソース 3 分ハッキング - "印刷中" ダイアログ抑止編

最近 レポート印刷時の "印刷中" ダイアログを抑止する方法という記事を書きました。
記事の概要に書いているように、その記事は某 SNS での回答を元にしています。で、記事ではダイアログ フックによる方法を説明していますが、元スレでは当初、別の方法も提案していました。そちらは汎用性に欠けるので記事には載せませんでしたが、せっかくなのでこのブログの方で取り上げることにします。

2010年11月19日金曜日

Access VBA ユーザなら知っておきたいキーボード ショートカット 10 選

Access VBA ユーザなら知っておきたいキーボード ショートカットを、独断と偏見で 10 個 選んでみました。
知らないとモグリという常識レベルのものから、知る人ぞ知る玄人レベルのものまで、幅広くチョイスしています。中にはショートカットじゃないものも含まれていますが、知っていると役に立つ、という観点から採用しています。

なお、ショートカットのピックアップには雅さんにもご協力いただきました。ありがとうございました。

2010年11月18日木曜日

外国語が文字化けしている VBA コードを読むには

外国語環境で作成されたファイルを日本語版 Access で開くと、VBA コード中の外国語が文字化けすることがあります。
英語なんかは大丈夫ですが、ウムラウトを含むヨーロッパ言語とか中国語などのアジア系言語はかなりの確率で、化けます。


これを、とりあえず文字化けせずに読む方法。

2010年11月17日水曜日

ダブルクリックしたデータファイルのパスを渡すには

次のような要件があるとします。
拡張子 .orz のデータファイルをダブルクリックすると、特定 MDB を起動させて、そのデータファイルを処理させたい。
拡張子 .orz は既存の拡張子とカブっていない、また特定 MDB のパスは固定であるものとします。
方法としては、拡張子の関連付けで、特定 MDB を起動させます。
またその際に、ダブルクリックされたファイルのフルパスを cmd スイッチに渡すようにします。cmd スイッチに渡された値は、VBA で Command 関数経由で参照できます。

Access のコマンド ライン スイッチ - Access - Microsoft Office
Command 関数 - Access - Microsoft Office

以下、詳細。

2010年11月16日火曜日

Dictionary のキーはデータ型を区別するか

ふつう Dictionary のキーには、文字列なら文字列、数値なら数値と、同じデータ型を使います。というか、キーにデータ型が混在するという状況自体が想像つきませんけれど。
しかし、仮にそういう状況があったとしたら、何が起きるのでしょうか。
ほとんど実際の役には立たないと思いますが、興味本位で試してみました。

2010年11月15日月曜日

SELECT * で取得されるフィールドの順序は保証されているか

最近 moug で見かけたスレッドの感想です。

SELECT * FROM ~ で取得されるフィールドの順番

moug のスレッドは半年で消えるため、かいつまんで内容を書いておくと、

Q「SELECT * で取得されるフィールドの順序は保証されているか」
A「保証するという仕様を確認できない以上、保証されていることを当てにすべきではない」

と、そんな内容でした。
上記内容には、自分も まったく異論ありません。
※ 一応 念のためお断りしておきますが、Jet SQL の話です。SQL 一般の話ではありません。

さて、正論は正論として、それとは別に、内部仕様がどうなっているのか推理してみるというマニアックな楽しみ方もアリだと思うので、ちょっと考えてみました。

2010年11月14日日曜日

Access の実行計画

ありがたいことに、ディスカバのようなサイトでも、時おり反応をいただくことがあります。
先日、次のようなコメントをいただきました。
Access の実行計画を見る方法です。
http://d.hatena.ne.jp/seraphy/20080306

2007のレジストリパスについて
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200809/08090018.txt
参考まで。
ありがとうございます。

さて、このコメントが意味するところについてちょっと考えてみたのですが、明確に何かについて質問しているわけではなさそうなので、以下のいずれかではないかと推測できます。