IRONXLの使用

オフィスなしのC# Excelライブラリ (初心者向けチュートリアル)

更新済み 1月 14, 2024
共有:

IronXLの紹介

IronXL ライブラリは従来の代替手段として機能します エクセル インターオペレーション Excelファイルの処理に対して、より合理的で効率的なアプローチを提供するC#で。

それは、.NETアプリケーションでMicrosoft Excelデータを管理する開発者にとって有用なExcel APIであり、Microsoft Officeに依存せずに機能します。XLSX、XLS、およびCSVなどのさまざまな形式のExcelファイルを簡単に管理する方法を提供します。

なぜIronXLを選ぶべきですか?

サーバーにMS Officeをインストールする必要がないため、IronXLはさまざまなサーバー環境において最適なソリューションとなります。

これは、ライセンスやサーバーパフォーマンスの制約によりMicrosoft Officeをインストールすることが実現不可能なサーバー環境において、最適な解決策となります。

IronXLの主な機能

IronXLの主な機能は次のとおりです:

  • Excelファイルの読み書き: IronXLはExcelファイルの作成および操作が可能です。 それは、異なるバージョンのExcelとの互換性を確保するために、クラシックなXLS形式と最新のXLSX形式の両方をサポートしています。
  • データのエクスポート:IronXLは データのエクスポート ExcelファイルからXMLファイル、CSVファイルなどの他の形式への変換や、他の形式からExcelファイルへの変換を効率的に行います。
  • .NET Core と .NET Framework のサポート: IronXL は .NET Core と .NET Framework の両方でシームレスに動作し、さまざまな開発環境で汎用性の高い選択肢となります。
  • 使いやすさ: IronXLを使用すると、開発者は最小限のコード行数で複雑なExcel操作を実行でき、生産性と効率が向上します。

インストールとセットアップ

IronXLの使用を開始するには、NuGetパッケージをインストールする必要があります。 以下にその方法を示します:

NuGet パッケージ マネージャー経由:NuGet Packages ManagerでIronXLを検索し、インストールします。

オフィス不要のC# Excelライブラリ (初心者向けチュートリアル): 図1

パッケージマネージャーコンソールを使用する:Visual Studioのパッケージマネージャーコンソールで以下のコマンドを実行します:Install-Package IronXL.Excel

IronXLの操作

IronXLは、C#開発者にExcelファイルを効率的に操作する能力を提供します。 このセクションでは、IronXLを使用して実行できるさまざまな操作について掘り下げ、詳細なガイダンスとコード例を提供します。

新しいExcelファイルの作成

新しいExcelファイルの作成は、データ操作やレポート作成において一般的な作業です。 IronXLを利用すると、数行のコードで簡単にExcelファイルを作成し、ワークシートを追加してデータを入力できます。

以下のコードは、どのようにして私たちができるかを示しています Excelファイルを作成する IronXL を使用する

// Initialize a new Workbook
var workbook = new WorkBook();
// Add a new Worksheet named "Sales Data"
var worksheet = workbook.CreateWorkSheet("Sales Data");
// Populate the Worksheet with data
worksheet ["A1"].Value = "Month";
worksheet ["B1"].Value = "Sales";
worksheet ["A2"].Value = "January";
worksheet ["B2"].Value = 5000;
worksheet ["A3"].Value = "February";
worksheet ["B3"].Value = 6000;
// Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx");
// Initialize a new Workbook
var workbook = new WorkBook();
// Add a new Worksheet named "Sales Data"
var worksheet = workbook.CreateWorkSheet("Sales Data");
// Populate the Worksheet with data
worksheet ["A1"].Value = "Month";
worksheet ["B1"].Value = "Sales";
worksheet ["A2"].Value = "January";
worksheet ["B2"].Value = 5000;
worksheet ["A3"].Value = "February";
worksheet ["B3"].Value = 6000;
// Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx");
' Initialize a new Workbook
Dim workbook As New WorkBook()
' Add a new Worksheet named "Sales Data"
Dim worksheet = workbook.CreateWorkSheet("Sales Data")
' Populate the Worksheet with data
worksheet ("A1").Value = "Month"
worksheet ("B1").Value = "Sales"
worksheet ("A2").Value = "January"
worksheet ("B2").Value = 5000
worksheet ("A3").Value = "February"
worksheet ("B3").Value = 6000
' Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx")
VB   C#

以下はコード出力です:

Office不要のC# Excelライブラリ (初心者向けチュートリアル): 図2

このコードはワークブックを作成し、ワークシートを追加して、販売データでそれを埋めた後、Excelファイルとして保存します。

IronXLは標準的なExcel表記をサポートしており、開発者がデータの読み取りや操作のために「A1」のようなセルを参照することができます。

Excelファイルの読込

Excelファイルから情報を読み取り抽出することは、データ処理アプリケーションにとって重要です。 IronXLは既存のExcelファイルを開くことができ、 内容を読み取ります Excelインターロップなしで。

コード例はこちら:

// Load an existing Excel file
var workbook = WorkBook.Load("FinancialData.xlsx");
// Access a specific worksheet by name
var worksheet = workbook.GetWorkSheet("Quarterly Report");
// Read values from specific cells
string quarter = worksheet ["A2"].StringValue;
double revenue = worksheet ["B2"].DoubleValue;
double expenses = worksheet ["C2"].DoubleValue;
// You can also iterate over rows and columns if needed
foreach (var row in worksheet.Rows)
{
    foreach (var cell in row)
    {
        Console.WriteLine(cell.Value);
    }
}
// Load an existing Excel file
var workbook = WorkBook.Load("FinancialData.xlsx");
// Access a specific worksheet by name
var worksheet = workbook.GetWorkSheet("Quarterly Report");
// Read values from specific cells
string quarter = worksheet ["A2"].StringValue;
double revenue = worksheet ["B2"].DoubleValue;
double expenses = worksheet ["C2"].DoubleValue;
// You can also iterate over rows and columns if needed
foreach (var row in worksheet.Rows)
{
    foreach (var cell in row)
    {
        Console.WriteLine(cell.Value);
    }
}
' Load an existing Excel file
Dim workbook = WorkBook.Load("FinancialData.xlsx")
' Access a specific worksheet by name
Dim worksheet = workbook.GetWorkSheet("Quarterly Report")
' Read values from specific cells
Dim quarter As String = worksheet ("A2").StringValue
Dim revenue As Double = worksheet ("B2").DoubleValue
Dim expenses As Double = worksheet ("C2").DoubleValue
' You can also iterate over rows and columns if needed
For Each row In worksheet.Rows
	For Each cell In row
		Console.WriteLine(cell.Value)
	Next cell
Next row
VB   C#

このコードは、Excelファイルをロードし、特定のワークシートにアクセスし、セルから値を読み取る方法を示しています。これには、行と列を繰り返し処理することも含まれます。

Excelファイルへのデータ書き込み

Excelファイルの修正は頻繁な要件です。 IronXLを使用すると、Excelファイルにデータを書き込み、更新することが容易になります。

次の例は、Excelファイルにデータを追加および更新する方法を示しています。

// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeData.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Adding new data to cells
worksheet ["A4"].Value = "John Doe";
worksheet ["B4"].Value = "Sales";
worksheet ["C4"].Value = 45000;
// Updating existing data
worksheet ["C2"].Value = 50000; // Update salary of an existing employee
// Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx");
// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeData.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Adding new data to cells
worksheet ["A4"].Value = "John Doe";
worksheet ["B4"].Value = "Sales";
worksheet ["C4"].Value = 45000;
// Updating existing data
worksheet ["C2"].Value = 50000; // Update salary of an existing employee
// Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx");
' Load an existing Excel file
Dim workbook = WorkBook.Load("EmployeeData.xlsx")
Dim worksheet = workbook.DefaultWorkSheet
' Adding new data to cells
worksheet ("A4").Value = "John Doe"
worksheet ("B4").Value = "Sales"
worksheet ("C4").Value = 45000
' Updating existing data
worksheet ("C2").Value = 50000 ' Update salary of an existing employee
' Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx")
VB   C#

この例では、新しいデータがExcelファイルに追加され、既存のデータが更新されます。これにより、データ操作におけるIronXLの柔軟性が示されています。

こちらが出力ファイルです:

オフィスなしのC# Excelライブラリ(初心者チュートリアル):図3

エクセルデータのエクスポート

Excelファイルから他の形式へのデータエクスポートは、データ分析やレポート作成においてしばしば必要とされます。 IronXLはこのプロセスを簡素化します。

以下は、ExcelファイルからCSV形式にデータをエクスポートする方法です:

// Load the Excel file
var workbook = WorkBook.Load("ProjectData.xlsx");
// Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv");
// You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json");
// Load the Excel file
var workbook = WorkBook.Load("ProjectData.xlsx");
// Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv");
// You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json");
' Load the Excel file
Dim workbook = WorkBook.Load("ProjectData.xlsx")
' Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv")
' You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json")
VB   C#

以下のコードスニペットは、ExcelファイルをCSVおよびJSON形式に変換する様子を示しており、IronXLがさまざまなファイル形式を処理できる柔軟性を強調しています。

IronXLの高度な機能

IronXLは、基本的なExcel操作だけに限りません。 それは複雑なデータ操作とフォーマットのニーズに対応する高度な機能が豊富に搭載されています。 それでは、これらの機能のいくつかについて詳しく見ていきましょう。

データテーブルの操作

IronXL では、Excel シートと .NET データ テーブル間の変換機能がデータ処理の柔軟性を高めます。 この機能は、一括データ操作やデータベースとのインターフェースに関わるシナリオに特に有用です。

// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeRecords.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Convert the Worksheet to a DataTable
DataTable dataTable = worksheet.ToDataTable(true);
// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeRecords.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Convert the Worksheet to a DataTable
DataTable dataTable = worksheet.ToDataTable(true);
' Load an existing Excel file
Dim workbook = WorkBook.Load("EmployeeRecords.xlsx")
Dim worksheet = workbook.DefaultWorkSheet
' Convert the Worksheet to a DataTable
Dim dataTable As DataTable = worksheet.ToDataTable(True)
VB   C#

大規模なExcelファイルのパフォーマンス最適化

大規模なExcelファイルを効率的に扱うことができるのはIronXLの主要な機能であり、大量のデータを扱う企業レベルのアプリケーションに適しています。

IronXLは、大規模なExcelファイルを扱う際にメモリ使用量を最小限に抑え、パフォーマンスを最適化するように設計されています。

これは、効率的なデータ処理アルゴリズムを通じて、およびワークシートおよびセルの選択的な読み取りを可能にすることによって達成され、システムリソースへの負荷を軽減します。

エクセルファイル形式の取り扱い

IronXLはさまざまなExcelファイル形式をサポートしており、異なるバージョンのExcelやその他のスプレッドシートソフトウェアとの互換性を確保しています。

// Creating a workbook
var workbook = new WorkBook();
// You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx"); // XLSX format
workbook.SaveAs("ExcelDocument.xls");  // XLS format
workbook.SaveAsCsv("ExcelDocument.csv");  // CSV format
// Creating a workbook
var workbook = new WorkBook();
// You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx"); // XLSX format
workbook.SaveAs("ExcelDocument.xls");  // XLS format
workbook.SaveAsCsv("ExcelDocument.csv");  // CSV format
' Creating a workbook
Dim workbook As New WorkBook()
' You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx") ' XLSX format
workbook.SaveAs("ExcelDocument.xls") ' XLS format
workbook.SaveAsCsv("ExcelDocument.csv") ' CSV format
VB   C#

この例では、IronXL が XSLX、XLS、および CSV 形式でドキュメントを作成して保存する方法を示しており、データの保存および共有方法に柔軟性を提供しています。

結論

Officeを使用しないC# Excelライブラリ (初心者チュートリアル): 図4

IronXLはMicrosoft Officeを必要とせずにExcelファイルを取り扱うための強力なC#ライブラリです。Excelファイルの読み取り、書き込み、エクスポートの機能に加え、.NET Coreおよび.NET Frameworkの両方をサポートしているため、アプリケーションでExcelデータを扱う開発者にとって優れた選択肢となります。

新しいExcelドキュメントを作成する場合でも、既存のファイルを処理する場合でも、データをさまざまな形式にエクスポートする場合でも、IronXLは強力で効率的なソリューションを提供します。

詳細なドキュメント、コード例、サポートについては、IronXLの公式ウェブサイトを訪問するか、GitHubリポジトリを確認してください。 IronXLを使用すると、C#でのExcelファイルの管理が簡単かつスムーズになります。

IronXLは、 無料試用 購入前に機能や能力を探索するためのユーザー向け。 この試用期間は、開発者が自分の環境でライブラリをテストし、.NETアプリケーションにおけるExcelファイル操作の特定のニーズを満たしていることを確認するためのものです。

試用期間後 ライセンス IronXLの利用は$599から始まり、すべての高度な機能と機能に完全にアクセスできます。

< 以前
C# エクセル自動化 (開発者チュートリアル)
次へ >
C#でoleDBを使用せずにExcelをデータテーブルに変換する方法

準備はできましたか? バージョン: 2024.9 新発売

無料のNuGetダウンロード 総ダウンロード数: 977,734 View Licenses >