2005-03-21

Avexで"Excel Suggest"

ExcelSuggest

Avex = Asynchronous + VBA + Excel

・・・とか言ってみる。


最近ハヤリのAjaxですが,それと同じことをExcelのマクロで出来ないかというのがAvexです。

サンプルとしてGoogleサジェストと同じ動きをする「Excel Suggest」というものを作ってみました。

VBAを使ってMSXMLオブジェクトを生成し,XMLHTTPRequestを呼び出してます。検索ボックスみたいなセルにキーワードを打ち込むと,Google Suggestからそのキーワードの候補を持ってきて下のセルに表示させます。

フリーで使って貰ってOKですけど,完全自己責任ってことでよろしく。

VBAマクロもなかなか使えますね。ハマってきちゃいました。

さてこのマクロを作って知ったこと。
  1. Application.ScreenUpdatingをサブルーチンの先頭でFalse,最後尾でTrueとすることで画面のちらつきを防げる。実行効率もアップ。
  2. Application.onKeyでキー入力のイベントも取得できるみたい。このマクロでは使ってないけど。
  3. "http: //www.google.com/complete/search?hl=en&js=true&qu="の 後にキーワードを付け足すことでGoogleSuggestのキーワードリストを取得できる。日本語版のリストはどうやって取得するのか分かんない。

ExcelSuggestのソース — Gist

参考リンク
参考にした本。

0 件のコメント: