.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.Item
は Chart
や Worksheet
などのさまざまな型を返すことができるため、newSheet
は System.__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)