C#で既存のスプレッドシートを読み込む方法

C#で既存のスプレッドシートを読み込む方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

既存のExcel、CSV、TSVファイルとDataSetオブジェクトをC#スプレッドシートにロードするには、Excelを完全にサポートするIronXLのWorkBook.Load()メソッドか、CSVフォーマットのLoadCSV()を使用します。

CSV(Comma-Separated Values)ファイル形式は、値がコンマで区切られた表形式のデータで、データ交換によく使用されます。 TSV(Tab-Separated Values)は、値の区切りにタブを使用するため、データにカンマが含まれている場合に適しています。 ファイル形式間の変換について詳しく知る.

Microsoftの.NETのDataSetクラスは、ADO.NET(ActiveX Data Objects for .NET)技術の一部です。 これは、データベースに関連するアプリケーションでよく使われ、データベースやXMLなどのさまざまなソースからデータを操作できます。 IronXLはDataSetオブジェクトのインポートとエクスポートをシームレスに統合します。

XLSX、XLS、XLSM、XLTX、CSV、TSVなどのExcelファイル形式やDataSetオブジェクトに含まれるデータは、IronXLを使ってExcelスプレッドシートにロードすることができます。 この強力な機能により、IronXLはビジネスアプリケーション、データ分析プロジェクト、自動レポーティングシステムでスプレッドシートのデータを扱う開発者にとって不可欠なツールとなります。

クイックスタート: 既存のスプレッドシートの読み込み

IronXL を使えば、簡単な方法で既存のExcel、CSV、TSVファイルをWorkBookに読み込むことができます。 開発者は、WorkBook.Load(...) を呼び出して完全なExcel サポートでデータを編集または抽出したり、LoadCSV(...) を使ってCSV形式に特化した処理を行ったりすることで、すぐに作業を開始できます。 包括的なAPIドキュメントについては、IronXL API Referenceをご覧ください。

Nuget Icon今すぐ NuGet で PDF を作成してみましょう:

  1. NuGet パッケージ マネージャーを使用して IronXL をインストールします

    PM > Install-Package IronXL.Excel

  2. このコード スニペットをコピーして実行します。

    IronXL.WorkBook workbook = IronXL.WorkBook.Load("sample.xlsx");
  3. 実際の環境でテストするためにデプロイする

    今すぐ無料トライアルでプロジェクトに IronXL を使い始めましょう
    arrow pointer


C#でExcelのスプレッドシートファイルを読み込むには?

既存のExcelワークブックを読み込むには、静的メソッド Load を使用します。 このメソッドは、XLSX、XLS、XLSM、XLTX、CSV、TSVのファイル形式をサポートしています。 ワークブックがパスワードで保護されている場合、パスワードをメソッドの 2 番目のパラメータとして渡します。 このメソッドはまた、ワークブックのデータをバイト配列またはストリームとして受け入れ、それぞれ専用の FromByteArray および FromStream メソッドを使用できます。

IronXLのローディング機能は、実際のアプリケーションの様々なシナリオに対応できるように設計されています。 ユーザーによってアップロードされたファイルを処理する場合でも、ネットワークストリームから読み取る場合でも、暗号化されたドキュメントを扱う場合でも、ライブラリは一貫した信頼性の高いインターフェイスを提供します。 Loadメソッドは、ファイルの拡張子とコンテンツに基づいてファイル形式を自動的に検出するため、さまざまな使用ケースに対応できます。

どのファイル形式を読み込むことができますか?

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-spreadsheet.cs
using IronXL;

// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
$vbLabelText   $csharpLabel

複数のファイル形式を読み込める柔軟性があるため、従来のExcelファイル(XLS)、最新のExcelワークブック(XLSX)、マクロ対応ワークブック(XLSM)、テンプレートファイル(XLTX)を扱うことができます。 この互換性により、最新のExcel機能をサポートしながら、古いシステムからのスムーズな移行を保証します。 新しいスプレッドシートの作成の詳細については、包括的なガイドをご覧ください。

パスワードで保護されたファイルをどのように扱えばよいですか?

機密データを扱う場合、パスワード保護が必要になることがよくあります。 IronXLはパスワードで保護されたワークブックを、パスワードをパラメータとして与えることで簡単にロードすることができます:

// Load password-protected Excel file
WorkBook protectedWorkBook = WorkBook.Load("protected.xlsx", "myPassword123");

// Work with the workbook normally
WorkSheet sheet = protectedWorkBook.DefaultWorkSheet;
sheet["B2"].Value = "Updated secure data";

// Save with password protection
protectedWorkBook.SaveAs("updated_protected.xlsx");
// Load password-protected Excel file
WorkBook protectedWorkBook = WorkBook.Load("protected.xlsx", "myPassword123");

// Work with the workbook normally
WorkSheet sheet = protectedWorkBook.DefaultWorkSheet;
sheet["B2"].Value = "Updated secure data";

// Save with password protection
protectedWorkBook.SaveAs("updated_protected.xlsx");
$vbLabelText   $csharpLabel

バイト配列やストリームからの読み込みについてはどうですか?

最近のアプリケーションでは、ファイルは、Webアップロード、API応答、データベースBLOBなど、さまざまなソースから来ることがよくあります。 IronXLはこれらのシナリオをエレガントに処理します:

// Loading from byte array
byte[] excelBytes = File.ReadAllBytes("sample.xlsx");
WorkBook workBookFromBytes = WorkBook.FromByteArray(excelBytes);

// Loading from stream
using (FileStream stream = new FileStream("sample.xlsx", FileMode.Open))
{
    WorkBook workBookFromStream = WorkBook.FromStream(stream);

    // Process the workbook
    var sheet = workBookFromStream.DefaultWorkSheet;
    Console.WriteLine($"Sheet has {sheet.RowCount} rows");
}

// Loading from MemoryStream (common in web applications)
using (MemoryStream memStream = new MemoryStream(excelBytes))
{
    WorkBook workBookFromMemory = WorkBook.FromStream(memStream);
}
// Loading from byte array
byte[] excelBytes = File.ReadAllBytes("sample.xlsx");
WorkBook workBookFromBytes = WorkBook.FromByteArray(excelBytes);

// Loading from stream
using (FileStream stream = new FileStream("sample.xlsx", FileMode.Open))
{
    WorkBook workBookFromStream = WorkBook.FromStream(stream);

    // Process the workbook
    var sheet = workBookFromStream.DefaultWorkSheet;
    Console.WriteLine($"Sheet has {sheet.RowCount} rows");
}

// Loading from MemoryStream (common in web applications)
using (MemoryStream memStream = new MemoryStream(excelBytes))
{
    WorkBook workBookFromMemory = WorkBook.FromStream(memStream);
}
$vbLabelText   $csharpLabel

なぜCSVファイル専用のメソッドを使用する必要があるのですか?

Loadメソッドは利用可能なすべてのファイル形式を読み込むことができますが、最適な処理のためにCSVファイル形式専用のLoadCSVメソッドを使用してください。 CSVファイルには、区切り文字の検出、エンコーディングの処理、データ型の推論など、特殊な処理の恩恵を受けるユニークな特性があります。 国際的なデータ形式を扱う場合や、CSVファイルでセミコロンやパイプのような非標準の区切り文字を使用する場合に特に役立ちます。

どのような場合に LoadCSV は Load よりも優れていますか?

LoadCSV メソッドは、CSV 解析の制御を強化し、カスタム区切り文字を指定したり、異なるエンコーディングを処理したり、大きな CSV ファイルを処理したりする必要がある場合に最適です。 国際的なデータ形式を扱う場合や、CSVファイルでセミコロンやパイプのような非標準の区切り文字を使用する場合に特に役立ちます。

LoadCSVはどのように特殊文字を処理しますか?

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-csv.cs
using IronXL;

// Load CSV file
WorkBook workBook = WorkBook.LoadCSV("sample.csv");
$vbLabelText   $csharpLabel

LoadCSVメソッドは、UTF-8、UTF-16、ASCIIを含むさまざまなエンコーディングを自動的に処理し、特殊文字、アクセント記号付きの文字、国際記号が正しく保持されるようにします。 これは、多言語データや科学的な表記法を扱う場合に非常に重要です。 完全なCSVワークフロー管理のために、.NETでCSVファイルを書くの詳細をご覧ください。


データセット オブジェクトを Excel に読み込むにはどうすればよいですか?

Microsoft .NET の DataSet クラスは、切断された状態でメモリ内でデータを管理し操作するために使用されます。 このDataSetは、LoadWorkSheetsFromDataSetメソッドを使用してワークブックに読み込むことができます。 以下のコード例では、空の DataSet が作成されますが、 通常はデータベースクエリから DataSet をインスタンス化することが一般的です。

なぜDataSetをExcelに変換するのですか?

DataSetオブジェクトをExcel形式に変換することは、レポート作成、データエクスポート、ユーザーフレンドリーなデータプレゼンテーションの作成に不可欠です。 ビジネスユーザーは、データ分析にExcel形式を好むことが多く、自動化されたレポートでは、データベースの結果をスプレッドシート形式に変換する必要が頻繁にあります。 この変換により、条件付き書式設定チャート作成、数式アプリケーションなど、生のDataSetオブジェクトでは利用できない機能が可能になります。

Excelでデータセットのリレーションシップはどうなるのですか

複数の関連テーブルを持つデータセットを読み込むと、IronXLはデータセット内のデータテーブルごとに別々のワークシートを作成します。 一貫したキー値によってテーブルの関係が保持されるため、エクスポートされたExcelファイルで作業する際、ユーザーはデータの整合性を維持できます。このため、参照整合性を維持しながら複雑なデータベーススキーマをエクスポートするのに理想的です。

データセットから複数のテーブルをロードできますか?

:path=/static-assets/excel/content-code-examples/how-to/load-spreadsheet-load-dataset.cs
using IronXL;
using System.Data;

// Create dataset
DataSet dataSet = new DataSet();

// Create workbook
WorkBook workBook = WorkBook.Create();

// Load DataSet
WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook);
$vbLabelText   $csharpLabel

データベース統合を含むより高度なシナリオについては、Excel to SQL via System.Data.DataSet のガイドを参照してください。

様々なデータソースをExcel形式にロードできるIronXLは.NET開発者にとって貴重なツールです。 レポーティングシステム、データ移行ツール、ビジネスインテリジェンスアプリケーションのいずれを構築する場合でも、ロード機能は強力なスプレッドシート操作の基盤となります。 より多くの例や高度なテクニックについては、総合チュートリアルセクションをご覧ください。

よくある質問

C#スプレッドシートに読み込めるファイル形式は何ですか?

IronXLはXLSX、XLS、XLSM、XLTX、CSV、TSVファイルやDataSetオブジェクトを含む複数のファイル形式の読み込みをサポートしています。この包括的なフォーマットのサポートにより、IronXLは.NETアプリケーションにおけるさまざまな表計算データ操作のニーズに適しています。

C#でExcelファイルを読み込むには?

IronXLのWorkBook.Load()メソッドを使えば、たった1行のコードでExcelファイルを読み込むことができます:IronXL.WorkBook workbook = IronXL.WorkBook.Load("sample.xlsx").CSVファイルの場合は、LoadCSV()メソッドを使用します。

パスワードで保護されたExcelファイルを読み込むことはできますか?

はい、IronXLはパスワードで保護されたワークブックの読み込みをサポートしています。暗号化されたExcelファイルを開く際には、Loadメソッドの2番目のパラメータとしてパスワードを渡してください。

CSVとTSVファイル形式の違いは何ですか?

CSV(Comma-Separated Values)は、カンマで値を区切り、データ交換によく使われます。TSV (Tab-Separated Values)は代わりにタブを使用し、データにカンマが含まれている場合に好まれます。IronXLは両方の形式をシームレスに読み込むことができます。

ファイル以外のソースからExcelデータを読み込むことはできますか?

はい、IronXLはFromByteArrayメソッドによるバイト配列やFromStreamメソッドによるストリームを含む複数のソースからワークブックのデータを読み込むことができます。この柔軟性により、アップロード、ネットワーク・ストリーム、メモリーからファイルを処理することができます。

スプレッドシートでDataSetオブジェクトを扱うには?

IronXLはADO.NET DataSetオブジェクトからExcelスプレッドシートにデータをインポートするLoadWorkSheetsFromDataSetメソッドを提供します。この統合により、データベース・アプリケーションとExcelワークブックの間でシームレスなデータ転送が可能になります。

スプレッドシートデータのロードとエクスポートの主な手順は?

1)IronXLライブラリのダウンロード、2)ファイルまたはDataSetの準備、3)Loadメソッドを使用してワークブックオブジェクトを作成、4)DataSetのインポートにはLoadWorkSheetsFromDataSetを使用、5)必要に応じてワークブックをエクスポート。

ローディングメソッドに関する包括的なドキュメントはありますか?

はい、IronXLはIronXL APIリファレンスですべてのローディングメソッドとそのパラメーターの詳細情報を含む完全なAPIドキュメントを提供し、開発者がスプレッドシートローディング機能を効果的に実装できるよう支援します。

カーティス・チャウ
テクニカルライター

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

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 1,802,965 | バージョン: 2025.12 リリース