Main Content

複数の MATLAB 関数の Excel クラスへの割り当て

MATLAB でのアドインの作成

メモ

Microsoft® Excel® の関数構文 (=myfunction(input)) を使用して MATLAB® 関数を呼び出すには、MATLAB 関数は単一のスカラー出力引数を返さなければなりません。複数の出力を指定するには、Function Wizard またはカスタム VBA コードを使用してマクロを作成します。

  1. MATLAB に付属している xlbasic フォルダーを作業フォルダーにコピーします。

    copyfile(fullfile(matlabroot,'toolbox','matlabxl','examples','xlbasic'),'xlbasic')

    MATLAB コマンド プロンプトで、作業フォルダー内の新しい xlbasic フォルダーに移動します。

  2. MATLAB 関数 doubleit.mincrementit.m、および powerit.m を確認します。

     function output = doubleit(input)
       output = input * 2;
    function output = incrementit(input1, input2)
       output = input1 + input2;
     function output = powerit(input1, input2)
       output = power(input1, input2);
    
  3. ライブラリ コンパイラ アプリまたは compiler.build.excelAddIn を使って、Excel アドインをビルドします。

    以下の情報をプロジェクトに使用します。

    アドイン名myexcelfunctions
    クラス名myexcelfunctionsclass
    コンパイル対象ファイル

    doubleit.m
    incrementit.m
    powerit.m

    たとえば、compiler.build.excelAddIn を使用している場合は、以下を入力します。

    buildResults = compiler.build.excelAddIn(["doubleit.m","incrementit.m","powerit.m"], ...
    'AddInName','myexcelfunctions', ...
    'ClassName','myexcelfunctionsclass', ...
    'GenerateVisualBasicFile','on', ...
    'Verbose','on');

    詳細については、MATLAB からの Excel アドインの作成の手順を参照してください。

Microsoft Excel へのアドインのデプロイ

  1. アドインをエンド ユーザーにデプロイするには、アドインの配布および Microsoft Excel への統合を参照してください。

    コンポーネントを登録してアドインをインストールしたら、関数 doubleitincrementit、および powerit をスプレッドシートで使用できます。

  2. Microsoft Excel を空白のブックで開きます。

  3. 以下を実行して、関数をテストします。

    1. セル A1 に =doubleit(2.5) を入力します。

    2. セル A2 に =incrementit(11,17) を入力します。

    3. セル A3 に =powerit(7,2) を入力します。

    セル A1A2A3 に、値 52849 がそれぞれ表示されるはずです。

  4. (オプション) これをテンプレートとして保存して、新規の Microsoft Excel スプレッドシートで関数 doubleitpowerit、および incrementit を使用します。

    1. [ファイル]、[名前を付けて保存] を選択し、ファイルの種類に [.xlt (テンプレート)] を選択します。

    2. Office_Installation_folder\XLSTART フォルダーに移動します。

    3. ファイルを Office_Installation_folder\XLSTART\Book.xlt として保存します。

      メモ

      このテンプレートを保存するには、Microsoft Excel のマクロ セキュリティ レベルを [中] または [低] に設定しておかなければなりません。