マクロを登録


 「なでしこ」でExcelを自動処理するときに、どうしても「なでしこ」の命令だけでは細かい処理ができません。そのような「なでしこ」にできない処理や、専門的あるいは複雑な処理はマクロ(またはVBA)の方が強力です。

 今のところ、「なでしこ」でExcelファイルに登録されているマクロを呼び出すことはできますが、Excelファイルにマクロが存在しない場合、新たにマクロを書き込んだり、「なでしこ」プログラムに記述したマクロを実行したりすることはできません。

 そこで、多少(かなり)強引ではありますが、あらかじめExcelで作成したマクロをエクスポートしておき、それをインポートすることで、マクロを持たないExcelファイルにマクロを登録することで、マクロを使えるようにします。

#Excelにマクロをインポートするプログラム(Excel2003対応)
エクセル起動してエクセル新規ブック。
『%TMV』をエクセルキー送信。
0.5秒待つ。
「Microsoft Visual Basic *」を窓ハンドル検索してVBAhndへ代入。
VBAhndへ『%FI』を窓ハンドルキー送信。
0.5秒待つ。
「ファイルのインポート」を窓ハンドル検索してインポートhndへ代入。
インポートhndへ「{デスクトップ}test.bas」を窓ハンドルキー文字送信。
インポートhndへ「%O」を窓ハンドルキー送信。
0.5秒待つ。
VBAhndへ『%{F4}』を窓ハンドルキー送信。
「{デスクトップ}マクロ挿入後.xls」へエクセル保存。
エクセル終了して終了。

 Excelにショートカットキーを送信することで、VBEを起動します。そこにエクスポートしておいた「bas」ファイルをインポートして、マクロを登録します。

 これで、「なでしこ」からマクロを使えるようになります。

 はい、もちろん、悪用厳禁です!
最終更新:2009年09月11日 15:26