メインコンテンツ

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

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

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

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)

参考

トピック