18-3.Excelとの連携 - Excelマクロの起動

Excelのマクロをコンテキサーから起動するには

【説明】

コンテキサーからExcelへデータをエクスポートする際に、コンテキサーで決められた名前のマクロをExcelマクロを呼び出します。
この機能を利用して、コンテキサーからのエクスポート時に、Excelワークシートを印刷したり、ワークシートの切替えたりする、特別な計算ロジックを実行するなどのExcel側での操作を自動化できます。

この動作は、「ファイル」メニューの「Excel」→「エクスポート」を操作した場合またはコマンドにて「Excel出力」アクションを実行した時どちらでも行われます。

【操作手順】

(1) Excelを開きます。
Excelエクスポートを利用した場合、コンテキサーのデータフォルダにある「Excel」フォルダにエクスポートされたワークブックが作成されています。

(2) Excelの「開発」リボンより「Visual Basic」を選びます。

もしリボンに「開発」という項目が表示されていない場合は、「リボンのユーザ設定」より「開発」の項目にチェックを入れます。

(3) 「Microsoft Visual Basic For Applications」画面にて、プロジェクトのツリーを右クリックして「挿入」→「標準モジュール」を選択します。

標準モジュールにマクロを入力するためのテキスト画面が表示されます。

コンテキサーから実行されるマクロは、ClearDataマクロ、MakeDataマクロ、ShowDataマクロです。
もし、該当するマクロが存在しない場合には、無視されます。

表  Excelマクロの種類
マクロ名 説明
ClearData Excelにデータを転送する前に呼び出します。
MakeData データを転送した後に呼び出します。
ShowData すべての処理が成功した場合に呼び出します。

例えば、この機能を利用して、Excelエクスポート時、自動でExcelの印刷機能を実行できます。次の例は、Excel連携を実行した後に、印刷シートを開き、プレビューを実行するというものです。これを、Excelのマクロとして登録するか、VBAの標準モジュールの中に定義してください。

Public Sub ShowData()
 
    '--------------------------------------------------
    '印刷プレビューを表示する
    '--------------------------------------------------
    Sheets("印刷").Select
    ActiveWindow.SelectedSheets.PrintPreview
   
End Sub

 

【関連項目】

2016年7月27日 更新