Main Content

compiler.build.excelAddIn

Microsoft Excel アドインの作成

説明

注意

この関数は Windows® オペレーティング システムでのみサポートされています。

compiler.build.excelAddIn(FunctionFiles) は、FunctionFiles で指定された MATLAB® 関数を使用して Excel® アドインを作成します。Excel アドインを作成する前に、サポートされているコンパイラをインストールしてください。

compiler.build.excelAddIn(FunctionFiles,Name,Value) は、名前と値の引数を 1 つ以上使って指定したオプションを用いて、Excel アドインを作成します。オプションには、アドイン名、出力ディレクトリ、Microsoft® Visual Basic® ファイルを生成するかどうかなどが含まれます。

compiler.build.excelAddIn(opts) は、compiler.build.excelAddInOptions オブジェクト opts を使って指定したオプションを用いて、Excel アドインを作成します。名前と値の引数を使用して他のオプションを指定することはできません。

results = compiler.build.excelAddIn(___) は、前述の構文にある入力引数の任意の組み合わせを使用して、ビルド情報を compiler.build.Results オブジェクトとして返します。ビルド情報は、ビルド タイプ、コンパイル済みファイルへのパス、およびビルド オプションで構成されます。

すべて折りたたむ

魔方陣を生成する関数ファイルを使用して、Windows システムで Excel アドインを作成します。

以下がインストールされていることを確認します。

  • Windows 10 SDK キット。詳細については、Windows 10 SDK を参照してください。

  • MinGW-w64。MathWorks File Exchange からインストールするには、MATLAB Support for MinGW-w64 C/C++ Compiler を参照してください。

    mbuild -setup -client mbuild_com を使用して、MATLAB で Excel アドインを確実に作成できるようにします。

MATLAB で、Excel アドインとしてデプロイする MATLAB 関数を見つけます。この例では、matlabroot\extern\examples\compiler にあるファイル magicsquare.m を使用します。

appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');

compiler.build.excelAddIn コマンドを使用して Excel アドインをビルドします。

compiler.build.excelAddIn(appFile);

関数により、現在の作業ディレクトリの magicsquareexcelAddIn という名前のフォルダーに以下のファイルが生成されます。

  • dlldata.c

  • GettingStarted.html

  • includedSupportPackages.txt

  • magicsquare.def

  • magicsquare.bas ('GenerateVisualBasicFile' オプションを有効にした場合のみ)

  • magicsquare.rc

  • magicsquare.xla ('GenerateVisualBasicFile' オプションを有効にした場合のみ)

  • magicsquare_1_0.dll

  • magicsquare_dll.cpp

  • magicsquare_idl.h

  • magicsquare_idl.idl

  • magicsquare_idl.tlb

  • magicsquare_idl_i.c

  • magicsquare_idl_p.c

  • magicsquareClass_com.cpp

  • magicsquareClass_com.hpp

  • mccExcludedFiles.log

  • mwcomtypes.h

  • mwcomtypes_i.c

  • mwcomtypes_p.c

  • readme.txt

  • requiredMCRProducts.txt

  • unresolvedSymbols.txt

Windows システムで Excel アドインを作成し、名前と値の引数を使用してカスタマイズします。

この例では、matlabroot\extern\examples\compiler にあるファイル magicsquare.m を使用します。

appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');

compiler.build.excelAddIn コマンドを使用して Excel アドインをビルドします。名前と値の引数を使用してアドインの名前とバージョンを指定し、Microsoft Visual Basic ファイルを生成して、詳細な出力を有効にします。

compiler.build.excelAddIn(appFile,'AddInName','MyMagicSquare',...
    'AddInVersion','2.0',...
    'GenerateVisualBasicFile','on',...
    'Verbose','on');

関数により、現在の作業ディレクトリの MyMagicSquareexcelAddIn という名前のフォルダーに以下のファイルが生成されます。

  • dlldata.c

  • GettingStarted.html

  • includedSupportPackages.txt

  • magicsquareClass_com.cpp

  • magicsquareClass_com.hpp

  • mccExcludedFiles.log

  • mwcomtypes.h

  • mwcomtypes_i.c

  • mwcomtypes_p.c

  • MyMagicSquare.bas

  • MyMagicSquare.def

  • MyMagicSquare.rc

  • MyMagicSquare.xla

  • MyMagicSquare_2_0.dll

  • MyMagicSquare_dll.cpp

  • MyMagicSquare_idl.h

  • MyMagicSquare_idl.idl

  • MyMagicSquare_idl.tlb

  • MyMagicSquare_idl_i.c

  • MyMagicSquare_idl_p.c

  • readme.txt

  • requiredMCRProducts.txt

  • unresolvedSymbols.txt

compiler.build.ExcelAddInOptions オブジェクトを使用して、Windows システムで複数の Excel アドインを作成します。

この例では、matlabroot\extern\examples\compiler にあるファイル magicsquare.m を使用します。

appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');

appFile を使用して ExcelAddInOptions オブジェクトを作成します。名前と値の引数を使用して共通の出力ディレクトリを指定し、Visual Basic ファイルを生成して、詳細な出力を有効にします。

opts = compiler.build.excelAddInOptions(appFile,...
    'OutputDir','D:\Documents\MATLAB\work\ExcelAddInBatch',...
    'GenerateVisualBasicFile','on',...
    'Verbose','on')
opts =

  ExcelAddInOptions with properties:

                  AddInName: 'magicsquare'
               AddInVersion: '1.0.0.0'
                  ClassName: 'magicsquareClass'
                 DebugBuild: off
               EmbedArchive: on
              FunctionFiles: {'C:\Program Files\MATLAB\R2022b\extern\examples\compiler\magicsquare.m'}
    GenerateVisualBasicFile: on
            AdditionalFiles: {}
        AutoDetectDataFiles: on
            SupportPackages: {'autodetect'}
                    Verbose: on
                  OutputDir: 'D:\Documents\MATLAB\work\ExcelAddInBatch'

ExcelAddInOptions オブジェクトを使用して、アドインをビルドします。

compiler.build.excelAddIn(opts);

同じオプションをもつ関数ファイル myMagic2.m を使用して新しいアドインを作成するには、ビルド関数を再度実行する前に、ドット表記を使用して既存の ExcelAddInOptions オブジェクトの FunctionFiles 引数を変更します。

opts.FunctionFiles = 'myMagic2.m';
compiler.build.excelAddIn(opts);

FunctionFiles 引数を変更して再コンパイルすることにより、同じオプション オブジェクトを使用して複数のアドインを作成できます。

Excel アドインを作成し、ビルド タイプ、生成ファイル、含まれるサポート パッケージ、およびビルド オプションに関する情報を compiler.build.Results オブジェクトに保存します。

matlabroot\extern\examples\compiler にあるファイル magicsquare.m を使用してコンパイルします。

results = compiler.build.excelAddIn('magicsquare.m')
results = 

  Results with properties:

              BuildType: 'excelAddIn'
                  Files: {2×1 cell}
IncludedSupportPackages: {}
                Options: [1×1 compiler.build.ExcelAddInOptions]

Files プロパティには、以下のコンパイル済みファイルへのパスが格納されます。

  • magicsquare_1_0.dll

  • GettingStarted.html

メモ

ファイル magicsquare.bas および magicsquare.xla は、ビルド コマンドで 'GenerateVisualBasicFile' オプションを有効にした場合にのみ Files に含められます。

入力引数

すべて折りたたむ

MATLAB 関数を実装するファイル。文字ベクトル、string スカラー、string 配列、または文字ベクトルの cell 配列として指定します。ファイル パスは現在の作業ディレクトリを基準とした相対パス、または絶対パスにできます。ファイルには .m 拡張子が必要です。

例: ["myfunc1.m","myfunc2.m"]

データ型: char | string | cell

Excel アドインのビルド オプション。compiler.build.ExcelAddInOptions オブジェクトとして指定します。

名前と値の引数

オプションのペアの引数を Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定する必要がありますが、ペアの順序は考慮されません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: 'Verbose','on'

Excel アドインの名前。文字ベクトルまたは string スカラーとして指定します。生成されたアドインの既定の名前は、FunctionFiles 引数の最初のエントリです。名前は文字で始まり、英字とアンダースコアのみを使用していなければなりません。

例: 'AddInName','myAddIn'

データ型: char | string

アドインのバージョン。文字ベクトルまたは string スカラーとして指定します。

例: 'AddInVersion','4.0'

データ型: char | string

Excel アドインに含める追加のファイルとフォルダー。文字ベクトル、string スカラー、string 配列、または文字ベクトルの cell 配列として指定します。パスは現在の作業ディレクトリを基準とした相対パス、または絶対パスにできます。

例: 'AdditionalFiles',["myvars.mat","data.txt"]

データ型: char | string | cell

データ ファイルを自動的に含めるためのフラグ。'on' または 'off'、もしくは数値または logical の 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off'false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。

  • このプロパティを 'on' に設定した場合、特定の関数 (loadfopen など) の入力として指定されるデータ ファイルは自動的にアドインに含められます。

  • このプロパティを 'off' に設定した場合、データ ファイルは AdditionalFiles プロパティを使用してアドインに追加しなければなりません。

例: 'AutoDetectDataFiles','Off'

データ型: logical

クラスの名前。文字ベクトルまたは string スカラーとして指定します。クラス名は Excel アドインのクラス名の要件に適合しなければなりません。

既定値は、FunctionFiles 引数にリストされている最初のファイルの名前に Class を追加したものです。

例: 'ClassName','magicsquareClass'

データ型: char | string

デバッグ シンボルを有効にするためのフラグ。'on' または 'off'、もしくは数値または logical の 1 (true) か 0 (false) として指定します。'on' の値は true と等価であり、'off'false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。

  • このプロパティを 'on' に設定した場合、アドインはデバッグ シンボル付きでコンパイルされます。

  • このプロパティを 'off' に設定した場合、アドインはデバッグ シンボル付きでコンパイルされません。

例: 'DebugSymbols','On'

データ型: logical

デプロイ可能なアーカイブを組み込むためのフラグ。'on' または 'off'、もしくは数値または logical の 1 (true) か 0 (false) として指定します。'on' の値は true と等価であり、'off'false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。

  • このプロパティを 'on' に設定した場合、関数はデプロイ可能なアーカイブを Excel アドインに組み込みます。

  • このプロパティを 'off' に設定した場合、関数はデプロイ可能なアーカイブを別個のファイルとして生成します。

例: 'EmbedArchive','Off'

データ型: logical

Visual Basic ファイル (.bas) および Excel アドイン ファイル (.xla) を生成するためのフラグ。'on' または 'off'、もしくは数値または logical の 1 (true) か 0 (false) として指定します。'on' の値は true と等価であり、'off'false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。

  • このプロパティを 'on' に設定した場合、関数は Excel アドイン XLA ファイルと、アドインに対する Microsoft Excel の数式関数インターフェイスを含む Visual Basic BAS ファイルを生成します。

  • このプロパティを 'off' に設定した場合、関数は Visual Basic ファイルや Excel アドイン ファイルを生成しません。

メモ

Excel アドイン ファイル (.xla) を生成するには、Excel の設定で [VBA プロジェクト オブジェクト モデルへのアクセスを信頼する] を有効にする必要があります。

例: 'GenerateVisualBasicFile','On'

データ型: logical

ビルド ファイルが保存される出力ディレクトリへのパス。文字ベクトルまたは string スカラーとして指定します。このパスは現在の作業ディレクトリを基準とした相対パス、または絶対パスにできます。

ビルド フォルダーの既定の名前は、アドイン名に excelAddIn を追加したものです。

例: 'OutputDir','D:\Documents\MATLAB\work\mymagicexcelAddIn'

データ型: char | string

含めるサポート パッケージ。次のオプションのいずれかとして指定します。

  • 'autodetect' (既定) — 依存関係の解析プロセスにより、必要なサポート パッケージが自動的に検出され、含められます。

  • 'none' — サポート パッケージは含められません。このオプションを使用すると、ランタイム エラーの原因となる可能性があります。

  • string スカラー、文字ベクトル、または文字ベクトルの cell 配列 — 指定されたサポート パッケージのみが含められます。インストールされている、または特定のファイルで使用されるサポート パッケージのリストを表示するには、compiler.codetools.deployableSupportPackages を参照してください。

例: 'SupportPackages',{'Deep Learning Toolbox Converter for TensorFlow Models','Deep Learning Toolbox Model for Places365-GoogLeNet Network'}

データ型: char | string | cell

ビルドの詳細を制御するためのフラグ。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off'false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。

  • このプロパティを 'on' に設定した場合、MATLAB コマンド ウィンドウには、ビルド プロセス中のコンパイラ出力を示す進行状況情報が表示されます。

  • このプロパティを 'off' に設定した場合、コマンド ウィンドウには進行状況の情報は表示されません。

例: 'Verbose','On'

データ型: logical

出力引数

すべて折りたたむ

ビルド結果。compiler.build.Results オブジェクトとして返されます。Results オブジェクトには以下が含まれています。

  • 'excelAddIn' であるビルド タイプ

  • 以下のファイルへのパス:

    • GettingStarted.html

    • AddInName_AddInVersion.dll

    • AddInName.bas ('GenerateVisualBasicFile' オプションを有効にした場合)

    • AddInName.xla ('GenerateVisualBasicFile' オプションを有効にした場合)

  • 含まれているサポート パッケージのリスト

  • ビルド オプション。ExcelAddInOptions オブジェクトとして指定

制限

  • この関数は Windows オペレーティング システムでのみサポートされています。

バージョン履歴

R2021a で導入