Excelのマクロ関数をコンテキサーから実行するには

概要

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

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

設定手順

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

(2) Excelの「開発」リボンを開きます。

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

A. 「マクロ」ボタンからマクロ作成

「開発」タブの「マクロ」ボタンからマクロを作成できます。

(1) Excelの「開発」リボンより「マクロ」を選びます。

(2) 「マクロ」画面で「マクロ名」欄に作成するマクロ名(「ShowData」「MakeData」「ClearData」のいずれか)を入力して[作成]ボタンをクリックします。

(3) コードウィンドウ画面に、マクロのひな形が表示されます。

B. Visual Basicによるマクロ作成

VBAでマクロを作成するには、次のように操作します。

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

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

(3) 標準モジュールにマクロを入力するための空白のコードウィンドウ画面が表示されます。

この画面で、次のようなコードを入力して、プロシージャを宣言します。

コンテキサーから実行されるマクロ

コンテキサーから実行されるマクロ名は、次の通りです。もし、標準モジュールに該当する名前のマクロが存在しない場合には、無視されます。

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

Excel出力時に印刷する

この機能を利用して、Excelエクスポート時にその内容をExcelで印刷することもできます。次のコード例は、Excel出力を実行した後に「印刷」シートを開き、印刷プレビューを表示します。ShowDataマクロをExcelのマクロとして登録するか、VBAの標準モジュールを作り、次のコードを定義してください。

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

関連項目

2021年6月18日 更新

ページの先頭へ