Main Content

.NET を使用した Microsoft Excel スプレッドシートでの作業

この Microsoft® .NET Framework の例では、スプレッドシートを作成し、MATLAB® データをいくつかそこにコピーして閉じます。この例では、Microsoft.Office.Interop.Excel.ApplicationClass クラスに属するクラスを使用します。クラスの詳細と、異なるバージョンの Excel® とのインターフェイス使用の詳細については、Microsoft Web サイトのドキュメンテーションを参照してください。

ワークブックを作成するには、以下を入力します。

dotnetenv("framework")
NET.addAssembly('microsoft.office.interop.excel');
app = Microsoft.Office.Interop.Excel.ApplicationClass;
books = app.Workbooks;
newWB = Add(books);
app.Visible = true;

シートを作成します。

sheets = newWB.Worksheets;
newSheet = Item(sheets,1);

sheets.ItemChartWorksheet などのさまざまな型を返すことができるため、newSheetSystem.__ComObject です。このシートを Worksheet にするには、以下のコマンドを使用します。

newWS = Microsoft.Office.Interop.Excel.Worksheet(newSheet);

MATLAB データを作成し、列 1 と列 2 をセル範囲に書き込みます。

excelArray = rand(10);
newRange = Range(newWS,'A1');
newRange.Value2 = 'Data from Location A';
newRange = Range(newWS,'A3:B12');
newRange.Value2 = excelArray;

列 C に 3 つのテキスト文字列を追加します。

% Create a 3x1 System.Object
strArray = NET.createArray('System.Object',3,1);
strArray(1,1) = 'Add';
strArray(2,1) = 'text';
strArray(3,1) = 'to column C';
newRange = Range(newWS,'C3:C5');
newRange.Value2 = strArray;

セル形式を変更し、ワークシートに名前を付けるには、以下を入力します。

newFont =  newRange.Font;
newFont.Bold = 1;
newWS.Name = 'Test Data';

このスプレッドシートが新規の場合、SaveAs メソッドを使用します。

SaveAs(newWB,'mySpreadsheet.xlsx');

スプレッドシートを閉じてアプリケーションを終了するには、以下を入力します。

Close(newWB)
Quit(app)

関連するトピック