
Excel ファイルを読み取って、XLSX XLS または C# のその他の関連形式の Excel ワークシートの行と列のデータを解析できます。 Excel ファイルからデータを抽出し、C# アプリケーションで使用すると便利です。したがって、このブログ投稿では、C# で Excel ファイルを読み取る方法をステップごとに説明します。
Excel ファイルを C# で読み取る理由
Excel ファイルは、その使いやすいインターフェイスと柔軟性により、表形式のデータを保存する一般的な手段です。 C# プログラミングの領域では、Excel ファイルからデータを抽出することで、タスクを自動化し、データ分析を実行し、多数のアプリケーションと統合する機会が得られます。このプロセスは、レポート、分析、またはさらなる処理のためにこれらのファイルからデータを抽出する必要があるシナリオで重要になります。
C#でExcelファイルを読み取る
Excel ワークシートからデータを簡単に読み取ることができます。 C# で Excel ファイルを読み取るには、次の手順に従うだけです。
- ご使用の環境で Conholdate.Total for .NET を構成します。
- Workbook クラスのオブジェクトを使用してソース Excel ファイルを読み込みます。
- Worksheets プロパティを使用してすべてのワークシートにアクセスします。
- For ループを使用して各ワークシートを繰り返します。
- 各行を繰り返し、各列の値を抽出します。
- セル値をコンソールに出力するか、要件に基づいて使用します。
以下のサンプル コードは、C# で Excel ファイルを読み取る方法を示しています。
// Excelファイルを読み込む
Workbook wb = new Workbook("excel.xlsx");
// すべてのワークシートを取得する
WorksheetCollection collection = wb.Worksheets;
// すべてのワークシートをループします
for (int worksheetIndex = 0; worksheetIndex < collection.Count; worksheetIndex++)
{
// インデックスを使用してワークシートを取得する
Worksheet worksheet = collection[worksheetIndex];
// ワークシート名を印刷します
Console.WriteLine("Worksheet: " + worksheet.Name);
// 行数と列数を取得する
int rows = worksheet.Cells.MaxDataRow;
int cols = worksheet.Cells.MaxDataColumn;
// 行をループする
for (int i = 0; i < rows; i++)
{
// 選択した行の各列をループします
for (int j = 0; j < cols; j++)
{
// セル値の解析
Console.Write(worksheet.Cells[i, j].Value + " | ");
}
// 改行を印刷する
Console.WriteLine(" ");
}
}
C# で特定のワークシートから Excel データを読み取る
場合によっては、複数のシートを含むワークブック全体を処理するのではなく、ワークシートから特定のデータを抽出する必要がある場合があります。 C# を使用して特定のワークシートの Excel ファイルからデータを読み取るには、次の手順に従ってください。
- Conholdate.Total for .NET をシステムにインストールします。
- Workbook クラスのインスタンスを作成します。
- 名前またはゼロから始まるインデックスを指定して、任意のワークシートにアクセスします。
- MaxDataRow プロパティと MaxDataColumn プロパティを使用して、最後に設定された行と列を取得します。
- 各行と列をループします。
- セルの値を取得します。
次のコード サンプルは、C# を使用して Excel の特定のワークシートからデータを読み取る方法を示しています。
// Excelファイルを読み込む
Workbook wb = new Workbook("excel.xlsx");
// インデックスを使用してワークシートを取得する
Worksheet worksheet = wb.Worksheets[0];
// ワークシート名を印刷します
Console.WriteLine("Worksheet: " + worksheet.Name);
// 行数と列数を取得する
int rows = worksheet.Cells.MaxDataRow;
int cols = worksheet.Cells.MaxDataColumn;
// 行をループする
for (int i = 0; i < rows; i++)
{
// 選択した行の各列をループします
for (int j = 0; j < cols; j++)
{
// セル値を解析しています
Console.Write(worksheet.Cells[i, j].Value + " | ");
}
// 改行を印刷する
Console.WriteLine(" ");
}
C# で Excel ファイルを読み取るためのベスト プラクティス
エラー処理: ファイルが見つからない、ファイル形式の問題、アクセス許可の問題など、Excel ファイルの読み取り中に発生する可能性のある例外を常に処理します。
メモリ管理: メモリ リークを避けるためにオブジェクトを適切に破棄します。
パフォーマンスの最適化: 特に大きな Excel ファイルを扱う場合は、適切な方法を使用してデータを効率的に読み取ります。
データ検証: Excel から読み取られたデータを検証およびサニタイズして、その整合性と信頼性を保証します。
無料の評価ライセンス
無料の一時ライセンスを取得して、API 機能を最大限に評価することができます。
まとめ
ソフトウェア開発の世界では、データの管理と操作は基本的なタスクです。 Excel ファイルは、データの保存と整理に広く使用されており、さまざまなアプリケーションでよく使用される形式です。このブログ投稿では、スプレッドシートのすべてのデータを解析したり、要件に応じて特定のワークシートを操作したりするなど、C# で Excel ファイルを読み取るさまざまなアプローチについて説明しました。ご質問がございましたら、フォーラム までご連絡ください。
よくある質問
C# を使用して、古い .xls と新しい .xlsx の両方の Excel ファイル形式を読み取ることはできますか?
はい、Conholdate.Total などの C# ライブラリは、古い .xls 形式と新しい .xlsx 形式の両方を処理できます。ただし、機能とパフォーマンスが向上しているため、可能な限り .xlsx ファイルを使用して作業することをお勧めします。
システムに Microsoft Excel がインストールされていない状態で Excel ファイルを読み取ることはできますか?
はい、C# で Excel ワークシートからデータを読み取るために Microsoft Excel をインストールする必要はありません。
C# を使用して Excel ファイル内の特定のワークシートやセルからデータを読み取ることはできますか?
はい、Excel ファイル内の特定のワークシートやセルからデータを読み取ることができます。名前または座標を使用して、特定のワークシートおよびセルからデータを抽出するだけです。
Excel ファイルから読み取ったデータを検証して整合性を確保するにはどうすればよいですか?
データを検証するには、アプリケーションの要件に応じてデータ型、範囲、および制約のチェックを実行できます。データを使用する前に、データが予想される形式と制約に従っていることを確認してください。