スプレッドシート ドキュメントを作成するための無料の .NET ライブラリ
オープン ソース .NET API を介して Excel ファイルの読み取り、書き込み、操作、および変換を行います。
NetOffice API を使用すると、.NET 開発者は、オープン ソースの .NET API を介して Excel ファイルの読み取り、書き込み、操作、および変換を行うことができます。 API を使用すると、Microsoft Excel スプレッドシートを自動化し、Microsoft Excel アドインを開発できます。 API を使用すると、開発者は MS Office バージョン 2000、2002、2003、2007、2010、2013、および 2016 に含まれるすべてのオプションを使用します。API は、アプリケーションで COM プロキシ オブジェクトを取得する COM アーキテクチャに依存します。
Microsoft Excel ドキュメントを操作するには、依存関係として OfficeApi.ddl、VBIDEApi.dll、および NetOffice.dll を含む ExcelApi.dll が必要です。すべての Office アプリケーションは、他のコンポーネント/タイプ ライブラリで定義されている型を使用します。したがって、これらの依存型ライブラリは、独立したアセンブリとして提供されます。各アセンブリには、NetOffice.dll アセンブリも必要です。
NetOffice を使い始める
まず、.NET Framework 4.5 以降が必要です。その後、リポジトリを GitHub から手動でダウンロードするか、NuGet からインストールしてください。
NuGet からのインストール NetOffice
Install-Package NetOfficeFw.Excel
無料の C# API を使用して Excel に図形を追加する
NetOffice を使用すると、.NET プログラマは Microsoft Excel スプレッドシートにプログラムで図形を追加できます。最初に Excel ファイルに図形を追加するには、Excel.Application を初期化し、メッセージ ボックスをオフにする必要があります。 Excel アプリケーションを起動したら、ExcelApplication.Workbooks.Add() メソッドを使用して新しいドキュメントを追加できます。 workSheet.Cells[1, 1].Value プロパティを使用して新しく作成した Excel ファイルにテキストを挿入し、WorkSheet.Shapes.AddShape(MsoAutoShapeType.msoShape32pointStar, 10, 50, 200, 20) メソッドを使用してファイルに形状を追加できます。
Excelスプレッドシートへのインサート形状 C# 経由でファイル
// start excel and turn off msg boxes
Excel.Application excelApplication = new Excel.Application();
excelApplication.DisplayAlerts = false;
// create a utils instance, not need for but helpful to keep the lines of code low
CommonUtils utils = new CommonUtils(excelApplication);
// add a new workbook
Excel.Workbook workBook = excelApplication.Workbooks.Add();
Excel.Worksheet workSheet = (Excel.Worksheet)workBook.Worksheets[1];
workSheet.Cells[1, 1].Value = "NetOffice Excel Example 04";
// create a star
Excel.Shape starShape = workSheet.Shapes.AddShape(MsoAutoShapeType.msoShape32pointStar, 10, 50, 200, 20);
// create a simple textbox
Excel.Shape textBox = workSheet.Shapes.AddTextbox(MsoTextOrientation.msoTextOrientationHorizontal, 10, 150, 200, 50);
textBox.TextFrame.Characters().Text = "text";
textBox.TextFrame.Characters().Font.Size = 14;
// create a wordart
Excel.Shape textEffect = workSheet.Shapes.AddTextEffect(MsoPresetTextEffect.msoTextEffect14, "WordArt", "Arial", 12,
MsoTriState.msoTrue, MsoTriState.msoFalse, 10, 250);
// save the book
string workbookFile = utils.File.Combine(HostApplication.RootDirectory, "Example04", DocumentFormat.Normal);
workBook.SaveAs(workbookFile);
// close excel and dispose reference
excelApplication.Quit();
excelApplication.Dispose();
/ show end dialog
HostApplication.ShowFinishDialog(null, workbookFile);
C# を使用して Excel でグラフを作成する
NetOffice を使用すると、.NET プログラマは Microsoft Excel ファイルにグラフをプログラムで追加できます。 Excelファイルにチャートを追加するには;最初に、Excel.Application を初期化し、メッセージ ボックスをオフにし、xcelApplication.Workbooks.Add() メソッドを使用して新しいワークシートを追加する必要があります。 Excel.ChartObject を初期化し、((Excel.ChartObjects)workSheet.ChartObjects()).Add(70, 100, 375, 225) メソッドを使用して設定することで、新しく作成した Excel ファイルにグラフを挿入できます。 Chart.SetSourceData() メソッドを使用して新しく作成したチャート
C# API を使用してグラフを Excel ワークシートに追加する
// start excel and turn off msg boxes
Excel.Application excelApplication = new Excel.Application();
excelApplication.DisplayAlerts = false;
// create a utils instance, no need for but helpful to keep the lines of code low
CommonUtils utils = new CommonUtils(excelApplication);
// add a new workbook
Excel.Workbook workBook = excelApplication.Workbooks.Add();
Excel.Worksheet workSheet = (Excel.Worksheet)workBook.Worksheets[1];
// we need some data to display
Excel.Range dataRange = PutSampleData(workSheet);
// create a nice diagram
Excel.ChartObject chart = ((Excel.ChartObjects)workSheet.ChartObjects()).Add(70, 100, 375, 225);
chart.Chart.SetSourceData(dataRange);
// save the book
string workbookFile = utils.File.Combine(HostApplication.RootDirectory, "Example05", DocumentFormat.Normal);
workBook.SaveAs(workbookFile);
// close excel and dispose reference
excelApplication.Quit();
excelApplication.Dispose();
// show end dialog
HostApplication.ShowFinishDialog(null, workbookFile);