
How to Read an Excel File in a C# Console Application
Excelファイルを操作することは、データの操作と分析を扱う際に特に一般的なソフトウェア開発のタスクです。
Excelファイルの読み取りは、多くのビジネスやデータ処理のシナリオでよく行われます。 Excelファイルはその表形式のデータ構造により、情報の保存と交換に頻繁に使用されます。
C#アプリケーションでは、IronXLがExcelファイルを扱うための強力で使いやすいソリューションを提供します。 この記事では、IronXLライブラリを使用してC#コンソールアプリケーションでExcelファイルの読み取り手順を説明します。
C#コンソールアプリケーションでExcelファイルを読む方法
- Visual StudioでC#コンソールアプリケーションを作成
- IronXL C# Excel ライブラリをインストール
- Workbook クラスオブジェクトを作成
- ExcelファイルをWorkbook.Loadメソッドでロード
- WorkSheetsメソッドを使用してワークシートをロード
- WorkSheet.Rowメソッドを使用してExcelファイルデータを読み取る
- Cellの値をループで処理
- コンソールウィンドウにCell.Textを出力
IronXLライブラリの紹介
IronXLは、開発者のためにExcel関連のタスクを簡単にするために設計された.NETライブラリです。 Excelファイルを作成、修正、読み取る必要がある場合でも、IronXLは多機能で包括的な機能を提供します。 IronXLは、Excelワークブック、シート、セルとのやり取りを簡素化します。
IronXLを使用すると、開発者はMicrosoft Office InteropやExcelをインストールせずに、C#プロジェクトにExcel機能をシームレスに統合できるようにExcelファイルにデータを簡単に読み書きできます。
IronXLの機能を活用することで、開発者はセルの値を操作し、Excelワークブックからデータを抽出して、Excelドキュメントを動的に生成できます。 直感的なAPIと強力な機能セットを備えたIronXLは、開発者がExcelデータを効率的に処理できるようにし、データ分析、レポート、およびドキュメント生成といったタスクを簡単にします。
Microsoft Excelファイル、スプレッドシート、またはワークシートを扱う際に、IronXLはC#アプリケーション開発プロセスを簡素化するために必要なツールを提供します。
IronXLの特長
先に進む前に、IronXLの主要な特長をいくつか紹介します:
- Excelファイルの作成と編集: IronXLはExcelファイルの作成と変更をサポートし、開発者はワークシート、セル、書式を操作できます。
- Excelファイルの読み取り: ライブラリは既存のExcelファイルからのデータ抽出を容易にし、.NETアプリケーション内でのExcelスプレッドシートデータの読み取りと処理を簡単にします。
- Excelへのエクスポート: IronXLは、アプリケーションからExcel形式へのデータのエクスポートを可能にし、他のツールおよびプラットフォームとの互換性を保証します。
- 数式と関数: Excelの数式と関数のサポートは動的な計算およびデータ操作を可能にします。
- セルの書式設定: IronXLはセルの書式設定に関する機能を提供し、スタイル、フォント、カラー、ボーダーを含みます。
Visual Studioを使用したコンソールアプリケーションの作成
新しいC#コンソールアプリケーションをVisual Studioで作成しましょう。
- Visual Studioを開きます。
- "新しいプロジェクトの作成"を選択します。

- C#テンプレートの下の"コンソールアプリ"を選択してください。

- プロジェクトに名前を付け"次へ"をクリックします。

- 適切な.NETフレームワークを設定し"作成"をクリックします。

NuGetパッケージマネージャーコンソールまたはソリューションを使用してIronXLをインストール
コンソールアプリケーションができたので、IronXLライブラリをインストールする必要があります。
オプション1: NuGetパッケージマネージャーコンソールを使用して
オプション2: Visual StudioのNuGetパッケージマネージャーを使用して
- ソリューション エクスプローラーでプロジェクトを右クリックします。
- "NuGetパッケージの管理"を選択します。
- "IronXL"を検索して"インストール"をクリックします。

IronXLを使用してExcelファイルを読む手順
では、IronXLを使用してC#コンソールアプリケーションでExcelファイルを読む手順を見ていきましょう。 以下のコードスニペットは、C#コンソールアプリケーションでExcelファイルを読み取る方法を示しています:
using IronXL;
class Program
{
public static void Main()
{
// Specify the path to the Excel file
string excelFilePath = "path/to/your/excel/file.xlsx";
// Load the Excel file in a using block to automatically dispose resources
using (WorkBook workBook = WorkBook.Load(excelFilePath))
{
// Access the first worksheet in the workbook
WorkSheet workSheet = workBook.WorkSheets[0];
// Iterate through each row in the worksheet
foreach (var row in workSheet.Rows)
{
// Iterate through each cell in the row
foreach (var cell in row)
{
// Print the text of the cell followed by a tab
Console.Write(cell.Text + "\t");
}
// Move to the next line after each row
Console.WriteLine();
}
} // WorkBook is automatically disposed here
}
}Imports IronXL
Module Program
Public Sub Main()
' Specify the path to the Excel file
Dim excelFilePath As String = "path/to/your/excel/file.xlsx"
' Load the Excel file in a using block to automatically dispose resources
Using workBook As WorkBook = WorkBook.Load(excelFilePath)
' Access the first worksheet in the workbook
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
' Iterate through each row in the worksheet
For Each row In workSheet.Rows
' Iterate through each cell in the row
For Each cell In row
' Print the text of the cell followed by a tab
Console.Write(cell.Text & vbTab)
Next
' Move to the next line after each row
Console.WriteLine()
Next
End Using ' WorkBook is automatically disposed here
End Sub
End ModuleこのC#コードスニペットは、Excelファイルからデータを読み取り、コンソールアプリケーションで表示する方法を示しています。 次のExcelファイルが読み取られ、コンソールウィンドウに表示されます:

それでは、コードを段階的に分解してみましょう:
IronXLの名前空間をインポートする
using IronXL;Imports IronXLこの行は、任意のExcelドキュメントを操作するためのクラスおよびメソッドを含むIronXL名前空間をインポートします。
メインメソッド
public static void Main() {
// Main method where the program execution begins
}Public Shared Sub Main()
' Main method where the program execution begins
End Subメインメソッドはアプリケーションのエントリーポイントです。 このメインメソッドに上記のコードスニペットを書きます。
Excelファイルパス
string excelFilePath = "path/to/your/excel/file.xlsx";Dim excelFilePath As String = "path/to/your/excel/file.xlsx"この行は、読み取りたいExcelファイルへのパスを指定します。 **"path/to/your/excel/file.xlsx"**を実際のExcelファイルへのパスに置き換えます。
Excelファイルのロード
using (WorkBook workBook = WorkBook.Load(excelFilePath))netWorkBook.Load()メソッドは、指定されたexcelFilePathからExcelファイルを読み込み、workBookというExcelオブジェクトにロードするために使用されます。 これをIDisposableを実装しているので、ワークブックが不要になったときに適切に廃棄されることを保証します。
ワークシートへのアクセス
WorkSheet workSheet = workBook.WorkSheets[0];Dim workSheet As WorkSheet = workBook.WorkSheets(0)この行は、ワークブックの最初のExcelシート(workBook.WorkSheets[0])にアクセスし、それをExcel WorkSheetオブジェクトworkSheetに割り当てます。
列および行ごとの繰り返し処理
foreach (var row in workSheet.Rows)
{
foreach (var cell in row)
{
Console.Write(cell.Text + "\t");
}
Console.WriteLine();
}Imports Microsoft.VisualBasic
For Each row In workSheet.Rows
For Each cell In row
Console.Write(cell.Text & vbTab)
Next cell
Console.WriteLine()
Next rowこれらの入れ子のforeachループは、ワークシート内の各行および列を繰り返し処理します。 各セルについて、セルのテキスト値(cell.Text)がタブ文字(" ")の後にコンソールに出力されます。 行内の全てのセルを印刷した後、改行文字が印刷され次の行に移動します。
ワークブックの破棄
using (WorkBook workBook = WorkBook.Load(excelFilePath))
{
// Work with the workbook here
} // WorkBook is automatically disposed hereImports System
Using workBook As WorkBook = WorkBook.Load(excelFilePath)
' Work with the workbook here
End Using ' WorkBook is automatically disposed hereusingブロックは、実行がブロックを離れるときにワークブックを自動的に廃棄し、関連するすべてのリソースを解放します。
動作するコード例については、こちらのコード例ページをご覧ください。
出力
アプリケーションを実行すると、Excelファイルのデータがコンソールウィンドウに印刷されます。

結論
このチュートリアルでは、IronXLライブラリを使用してC#コンソールアプリケーションでExcelファイルを読み取るプロセスを探りました。 IronXLはその直感的な機能を備えており、Excel関連のタスクを簡単にするため、データ中心のアプリケーションを開発する.NET開発者にとって貴重なツールです。
C#プロジェクトでのより高度なExcel操作のために、IronXLが提供する追加機能をこちらのドキュメントページで探ることができます。
IronXLはその完全な機能を試験する無料トライアルを提供しており、情報に基づいて決定を下す前に試すことができます。 商用利用には、$999から始まるライセンスキーの購入が必要です。
ライセンスパッケージの詳細については、こちらのライセンスページをご覧ください。 こちらからライブラリをダウンロードして試してみてください。

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。
関連する記事



