IRONXLの使用 C#でExcelファイルを開く方法 カーティス・チャウ 更新日:2026年1月19日 IronXL をダウンロード NuGet ダウンロード DLL ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る IronXLを使用すると、C#開発者はMicrosoft Officeをインストールすることなく、Excelファイルを開いて読み込み、操作することができます。 WorkBook.Load() を使用してワークブックを読み込み、sheet["A1"] のような直感的な構文でワークシートにアクセスし、セルの値を読み取るだけです。 このチュートリアルでは、C# プロジェクトでIronXLを使用して Excel ファイルを開いて読み込む方法を解説し、ジュニア開発者向けにExcel データの操作に関する包括的な例とベストプラクティスを提供します。 IronXL Excelライブラリとは何ですか? IronXLは、使いやすさ、正確性、速度を最優先に設計された.NETライブラリです。 これは、MS Office Interop を必要とせずに Excel ファイルを効率的に開いたり、読み込んだり、作成したり、編集したりするのに役立ち、 Interop を使用せずに C# で Excel を操作したい開発者にとって実用的な選択肢となります。 IronXLは、すべて for .NET Frameworkに加え、 Linux 、 macOS 、 Docker 、 Azure 、 AWSと互換性があります。 これを使えば、コンソールアプリケーション、Webアプリケーション、デスクトップアプリケーション(最新のWebアプリ向けのBlazorや.NET MAUIなど)を作成できます。XLSやXLSXファイル、XSLTやXLSM、CSV、TSVなど、さまざまなワークブック形式をサポートしています。 IronXLの主な特徴は何ですか? LoadSpreadsheetsを使用して、XLS/XLSX/CSV/TSV 形式のデータを開いて読み込み、検索します。 -保存とエクスポートを使用して、 Excel ワークシートを複数の形式にエクスポートします。 -安全な機能を使用して、パスワードでファイルを暗号化および復号化します。 DataSet統合を介して、ExcelシートをDataTableオブジェクトとして操作します。 Excel の数式は自動的に再計算され、数学関数をサポートします。 WorkSheet["A1:B10"] のような直感的な範囲構文を使用してスプレッドシートデータを編集します。 -セル範囲、列、行を並べ替えます。 -フォント、背景、罫線、配置、数値形式を使用してセルをスタイル設定します。 C#でExcelファイルを開く方法は? 始める前に必要なものは何ですか? C# アプリケーションで IronXL を使用するには、以下のコンポーネントをローカルコンピュータにインストールしてください: Visual Studio - C# .NETアプリケーション開発のための公式IDE。 Visual Studio はMicrosoft のウェブサイトからダウンロードしてインストールできます。 また、JetBrains ReSharper & Riderも使用できます。 詳しい設定手順については、"はじめに概要"を参照してください。 IronXL - C# で Excel シートを操作するのに役立つ Excel ライブラリ。 使用する前にC#アプリケーションにインストールする必要があります。 NuGetのWebサイト、またはVisual Studioの"NuGetパッケージの管理"からダウンロードできます。 また、.NET Excel DLLファイルを直接ダウンロードすることもできます。 ライセンスの実装については、 "ライセンスキーの使用"を参照してください。 どの名前空間をインポートすべきですか? Visual Studio と IronXL がインストールされたら、以下の行を C# ファイルの先頭に追加して、必要な IronXL 名前空間を追加します。 // Add reference to the IronXL library using IronXL; // Add reference to the IronXL library using IronXL; $vbLabelText $csharpLabel 特定のExcel形式や高度な機能を扱うには、以下のものも必要になる場合があります。 using IronXl.Formatting; // For cell styling using IronXl.Drawing; // For images and charts using System.Data; // For DataSet/DataTable operations using IronXl.Formatting; // For cell styling using IronXl.Drawing; // For images and charts using System.Data; // For DataSet/DataTable operations $vbLabelText $csharpLabel 既存のExcelファイルを読み込むにはどうすればよいですか? Excel ファイルは、ワークブックとも呼ばれ、各シートにセル値が含まれる複数のワークシートで構成されています。 Excel ファイルを開いて読み込むには、 WorkBookクラスのLoadメソッドを使用して読み込みます。 LoadSpreadsheets機能は、さまざまなフォーマットに対応しています。 // Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV WorkBook workbook = WorkBook.Load("test.xlsx"); // You can also load from streams for web applications // using (var stream = File.OpenRead("test.xlsx")) // { // WorkBook workbook = WorkBook.Load(stream); // } // Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV WorkBook workbook = WorkBook.Load("test.xlsx"); // You can also load from streams for web applications // using (var stream = File.OpenRead("test.xlsx")) // { // WorkBook workbook = WorkBook.Load(stream); // } $vbLabelText $csharpLabel これにより、ワークブックが WorkBook インスタンスとして初期化されます。 特定のWorkSheets コレクションからそれを取得します。 ワークシートの管理ガイドには、ワークシートの操作に関する詳細情報が記載されています。 // Access the first worksheet in the workbook WorkSheet sheet = workbook.WorkSheets.First(); // Alternative ways to access worksheets WorkSheet sheetByIndex = workbook.WorkSheets[0]; // By index WorkSheet sheetByName = workbook.GetWorkSheet("Sheet1"); // By name // Access the first worksheet in the workbook WorkSheet sheet = workbook.WorkSheets.First(); // Alternative ways to access worksheets WorkSheet sheetByIndex = workbook.WorkSheets[0]; // By index WorkSheet sheetByName = workbook.GetWorkSheet("Sheet1"); // By name $vbLabelText $csharpLabel これにより、Excel ファイルの最初のシートにアクセスし、読み取りおよび書き込み準備が整います。 Excel ファイル Excelのセルからデータを読み取るにはどうすればよいですか? Excelファイルが開かれたら、データの読み込み準備が整います。 IronXL を使用して C# で Excel ファイルからデータを読み取るのは簡単です。 範囲選択機能を使用してセル参照を指定することで、セルの値を読み取ることができます。 次のコードは、セルの値を取得します: // Select the cell using Excel notation and retrieve its integer value int cellValue = sheet["C2"].IntValue; // You can also retrieve values in different formats string textValue = sheet["C2"].StringValue; decimal decimalValue = sheet["C2"].DecimalValue; DateTime dateValue = sheet["C2"].DateTimeValue; bool boolValue = sheet["C2"].BoolValue; // Display the value in the console Console.WriteLine($"Cell C2 contains: {cellValue}"); // Check if cell is empty before reading if (!sheet["C2"].IsEmpty) { Console.WriteLine($"Cell value: {sheet["C2"].Value}"); } // Select the cell using Excel notation and retrieve its integer value int cellValue = sheet["C2"].IntValue; // You can also retrieve values in different formats string textValue = sheet["C2"].StringValue; decimal decimalValue = sheet["C2"].DecimalValue; DateTime dateValue = sheet["C2"].DateTimeValue; bool boolValue = sheet["C2"].BoolValue; // Display the value in the console Console.WriteLine($"Cell C2 contains: {cellValue}"); // Check if cell is empty before reading if (!sheet["C2"].IsEmpty) { Console.WriteLine($"Cell value: {sheet["C2"].Value}"); } $vbLabelText $csharpLabel 出力は以下の通りです。 Excel の読み取り セル範囲からデータを読み取るには、ループを使用して指定された範囲を繰り返し処理します。 Excel範囲選択の例では、さらに多くのパターンが示されています。 // Iterate through a range of cells and display their address and text content foreach (var cell in sheet["A2:A6"]) { Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text); } // Read an entire column foreach (var cell in sheet.GetColumn(0)) // Column A { if (!cell.IsEmpty) { Console.WriteLine($"Column A value: {cell.Text}"); } } // Read an entire row foreach (var cell in sheet.GetRow(1)) // Row 2 { Console.WriteLine($"Row 2 value: {cell.Text}"); } // Iterate through a range of cells and display their address and text content foreach (var cell in sheet["A2:A6"]) { Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text); } // Read an entire column foreach (var cell in sheet.GetColumn(0)) // Column A { if (!cell.IsEmpty) { Console.WriteLine($"Column A value: {cell.Text}"); } } // Read an entire row foreach (var cell in sheet.GetRow(1)) // Row 2 { Console.WriteLine($"Row 2 value: {cell.Text}"); } $vbLabelText $csharpLabel セル範囲 A2:A6 内の各値がアクセスされ、コンソールに表示されます。 セル範囲の読み取り より詳細な読み書きの例については、 C# による Excel の読み取りチュートリアルを参照してください。 Excelデータをデータテーブルに変換することで、より簡単に操作することもできます。 // Convert worksheet to DataTable for easier data manipulation DataTable dataTable = sheet.ToDataTable(true); // true = first row contains headers // Access data using DataTable methods foreach (DataRow row in dataTable.Rows) { Console.WriteLine($"Employee: {row["Name"]}, Salary: {row["Salary"]}"); } // Convert worksheet to DataTable for easier data manipulation DataTable dataTable = sheet.ToDataTable(true); // true = first row contains headers // Access data using DataTable methods foreach (DataRow row in dataTable.Rows) { Console.WriteLine($"Employee: {row["Name"]}, Salary: {row["Salary"]}"); } $vbLabelText $csharpLabel 新しいExcelファイルを作成するにはどうすればよいですか? IronXLは、データの保存と検索のための新しいワークブックの作成も容易にします。 スプレッドシート作成ガイドには、包括的な例が掲載されています。 1 行のコードで新しい Excel ファイルを作成できます: // Create a new workbook with the XLSX format WorkBook workBook = new WorkBook(ExcelFileFormat.XLSX); // Alternative: Create with XLS format for compatibility WorkBook xlsWorkBook = new WorkBook(ExcelFileFormat.XLS); // Set workbook metadata workBook.Metadata.Title = "Employee Data"; workBook.Metadata.Author = "Your Name"; workBook.Metadata.Keywords = "employees, salary, data"; // Create a new workbook with the XLSX format WorkBook workBook = new WorkBook(ExcelFileFormat.XLSX); // Alternative: Create with XLS format for compatibility WorkBook xlsWorkBook = new WorkBook(ExcelFileFormat.XLS); // Set workbook metadata workBook.Metadata.Title = "Employee Data"; workBook.Metadata.Author = "Your Name"; workBook.Metadata.Keywords = "employees, salary, data"; $vbLabelText $csharpLabel 次に、ワークシートを作成し、データを追加します。 より高度な作成パターンについては、 "新しい Excel ファイルを作成する"を参照してください。 ワークブックにワークシートを追加するにはどうすればよいですか? // Create a worksheet named "GDPByCountry" in the workbook WorkSheet workSheet = workBook.CreateWorkSheet("GDPByCountry"); // Create multiple worksheets at once WorkSheet sheet2 = workBook.CreateWorkSheet("PopulationData"); WorkSheet sheet3 = workBook.CreateWorkSheet("Summary"); // Copy an existing worksheet WorkSheet copiedSheet = workSheet.CopySheet("GDPByCountryCopy"); // Create a worksheet named "GDPByCountry" in the workbook WorkSheet workSheet = workBook.CreateWorkSheet("GDPByCountry"); // Create multiple worksheets at once WorkSheet sheet2 = workBook.CreateWorkSheet("PopulationData"); WorkSheet sheet3 = workBook.CreateWorkSheet("Summary"); // Copy an existing worksheet WorkSheet copiedSheet = workSheet.CopySheet("GDPByCountryCopy"); $vbLabelText $csharpLabel "GDPByCountry"と名付けられたワークシートをワークブックに追加し、セル値を追加できるようにします。 ワークシートの管理方法やワークシートのコピー方法について詳しくはこちらをご覧ください。 特定のセルに値を設定するには、以下のコードを使用します: // Set the value of cell A1 to "Example" workSheet["A1"].Value = "Example"; // Add different types of data workSheet["A2"].Value = 12345; // Integer workSheet["A3"].Value = 99.99m; // Decimal workSheet["A4"].Value = DateTime.Now; // Date workSheet["A5"].Value = true; // Boolean // Add formulas workSheet["B1"].Formula = "=SUM(A2:A3)"; // Set multiple cells at once using a range workSheet["C1:C5"].Value = "Bulk Value"; // Save the workbook workBook.SaveAs("output.xlsx"); // Set the value of cell A1 to "Example" workSheet["A1"].Value = "Example"; // Add different types of data workSheet["A2"].Value = 12345; // Integer workSheet["A3"].Value = 99.99m; // Decimal workSheet["A4"].Value = DateTime.Now; // Date workSheet["A5"].Value = true; // Boolean // Add formulas workSheet["B1"].Formula = "=SUM(A2:A3)"; // Set multiple cells at once using a range workSheet["C1:C5"].Value = "Bulk Value"; // Save the workbook workBook.SaveAs("output.xlsx"); $vbLabelText $csharpLabel 最終出力は以下の通りです: セルに値を追加 さまざまなExcelフォーマットの操作 IronXLは複数のExcel形式に対応しています。 さまざまなファイルタイプの処理方法は次のとおりです。 // Convert between formats WorkBook workbook = WorkBook.Load("data.csv"); workbook.SaveAs("data.xlsx"); // Convert CSV to XLSX // Export to different formats workbook.SaveAsCsv("output.csv", ";"); // CSV with semicolon delimiter workbook.SaveAsJson("output.json"); // Export as JSON workbook.SaveAsXml("output.xml"); // Export as XML // Convert between formats WorkBook workbook = WorkBook.Load("data.csv"); workbook.SaveAs("data.xlsx"); // Convert CSV to XLSX // Export to different formats workbook.SaveAsCsv("output.csv", ";"); // CSV with semicolon delimiter workbook.SaveAsJson("output.json"); // Export as JSON workbook.SaveAsXml("output.xml"); // Export as XML $vbLabelText $csharpLabel スプレッドシートファイルの形式変換や、 XLSXをCSV、JSON、XMLに変換する方法について詳しくはこちらをご覧ください。 エラー処理とベストプラクティス Excelファイルを扱う際は、適切なエラー処理を実装してください。 try { WorkBook workbook = WorkBook.Load("test.xlsx"); WorkSheet sheet = workbook.GetWorkSheet("Sheet1"); // Check if sheet exists if (sheet == null) { Console.WriteLine("Worksheet not found!"); return; } // Process data var value = sheet["A1"].Value; } catch (Exception ex) { Console.WriteLine($"Error reading Excel file: {ex.Message}"); } try { WorkBook workbook = WorkBook.Load("test.xlsx"); WorkSheet sheet = workbook.GetWorkSheet("Sheet1"); // Check if sheet exists if (sheet == null) { Console.WriteLine("Worksheet not found!"); return; } // Process data var value = sheet["A1"].Value; } catch (Exception ex) { Console.WriteLine($"Error reading Excel file: {ex.Message}"); } $vbLabelText $csharpLabel 本番環境で使用するアプリケーションでは、ログ記録の設定と適切なエラー処理パターンの実装を検討してください。 何を学んだか? この記事では、C# で IronXL を使用して XLS や XLSX などの Excel ファイルを開いて読み取る方法を示しています。 IronXLはExcel関連のタスクを実行する際にシステムにMicrosoft Excelがインストールされている必要がないため、 DockerのデプロイやAzure Functionsに最適です。 IronXLは、数式計算、文字列の並べ替え、トリミング、検索と置換、結合と結合解除、ファイルの保存など、Excel関連のタスクをプログラムで実行するための包括的なソリューションを提供します。 セルのデータ形式を設定したり、条件付き書式を操作したり、 グラフを作成したりすることもできます。 高度な機能については、グループ化とグループ解除、名前付き範囲、ハイパーリンク、 Excel ファイルの保護について調べてみてください。 完全なAPIリファレンスには、すべての機能に関する詳細なドキュメントが記載されています。 IronXLは30日間の無料トライアルが利用可能で、商用利用のためのライセンスも取得できます。 IronXLのLiteパッケージは$799から始まります。 その他のリソースについては、チュートリアルセクションを参照するか、一般的なシナリオにおけるコード例をご覧ください。 よくある質問 Interopを使用せずにC#でExcelファイルを開くにはどうすればいいですか? IronXLライブラリを利用することで、Interopを使用せずにC#でExcelファイルを開くことができます。WorkBook.Loadメソッドを使用して、ExcelファイルをWorkBookインスタンスにロードし、ファイル内のデータにアクセスして操作できます。 このC# Excelライブラリと互換性のあるファイル形式は何ですか? IronXLは、XLS、XLSX、CSV、TSVを含むさまざまなExcelファイル形式をサポートします。これにより、開発者はこれらの形式をC#アプリケーション内で柔軟に開く、読み取る、書き込むことができます。 このライブラリを使用してC#でExcelファイルを編集できますか? はい、IronXLを使用してExcelファイルを編集できます。ワークブックを読み込んだ後、データを変更したり、新しいワークシートを追加したりして、そのままファイルに保存したり、さまざまな形式でエクスポートしたりできます。 このライブラリをC#プロジェクトで使用するためにはどのようにインストールするのですか? C#プロジェクトにIronXLをインストールするには、Visual StudioのNuGetパッケージマネージャを使用してライブラリを追加します。あるいは、.NET Excel DLLをダウンロードしてプロジェクトに参照を追加することもできます。 このライブラリを使用してExcelファイルを暗号化することは可能ですか? はい、IronXLを使用してExcelファイルを暗号化および復号できます。ファイル操作中の機密データを保護するために、パスワードでExcelドキュメントを保護できます。 このライブラリはExcelシートの数式の再計算をサポートしていますか? IronXLは自動数式再計算をサポートしており、データの変更があれば数式をExcelのように自動的に更新します。 このライブラリを使用してExcelワークシートの特定のセル値を読み取るにはどうすればよいですか? IronXLを使用して特定のセル値を読み取るには、Excel表記を使用してセルを参照します。例えば、sheet["A1"].StringValueは、セルA1の文字列値を取得します。 このライブラリは異なるオペレーティングシステムで使用できますか? はい、IronXLはWindows、Linux、macOSを含む複数のオペレーティングシステムと互換性があります。また、Docker、Azure、AWS環境での展開をサポートしています。 MS Office Interop ではなくこのライブラリを使用する利点は何ですか? Excelをシステムにインストールする必要がないこと、サーバー環境での優れたパフォーマンス、現代的な.NETアプリケーションとの相性の良さなど、IronXLはMS Office Interopよりも多くの利点を提供します。 このC# Excelライブラリの無料トライアルはありますか? はい、IronXLは30日間の無料トライアルを提供しており、その機能と能力を試してからプロジェクトの商用ライセンスを決定できます。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 関連する記事 更新日 2026年3月1日 ASP .NET C# で Excel ファイルをダウンロード: XLSX、CSV などにデータをエクスポート C#とIronXLを使用して、 ASP.NET CoreでExcelファイルをダウンロードします。MVCコントローラーからMemoryStreamとFile()を使用して、XLSX、CSV、XML形式でデータをエクスポートします。コード例も含まれています。 詳しく読む 更新日 2026年3月1日 IronXLを使用してBlazorで Excel ファイルをエクスポートする方法 IronXLを使用してBlazor Server アプリケーションから Excel にデータをエクスポートする方法を学びます。このガイドでは、プロジェクトのセットアップ、サービス設計、条件付き書式、複数シートのレポート、エラー処理について、完全な C# コード例とともに説明します。 詳しく読む 更新日 2026年2月27日 StreamReader の代わりに C# で Excel ファイルを読み取る方法 StreamReader が Excel ファイルを読み取れない理由と、 IronXL を使用して C# .NETのディスクまたはメモリ ストリームから XLSX および XLS ワークブックを読み込む方法について説明します。 詳しく読む C#でExcelファイルを読み取る方法Excelでテーブルを範囲に変...
更新日 2026年3月1日 ASP .NET C# で Excel ファイルをダウンロード: XLSX、CSV などにデータをエクスポート C#とIronXLを使用して、 ASP.NET CoreでExcelファイルをダウンロードします。MVCコントローラーからMemoryStreamとFile()を使用して、XLSX、CSV、XML形式でデータをエクスポートします。コード例も含まれています。 詳しく読む
更新日 2026年3月1日 IronXLを使用してBlazorで Excel ファイルをエクスポートする方法 IronXLを使用してBlazor Server アプリケーションから Excel にデータをエクスポートする方法を学びます。このガイドでは、プロジェクトのセットアップ、サービス設計、条件付き書式、複数シートのレポート、エラー処理について、完全な C# コード例とともに説明します。 詳しく読む
更新日 2026年2月27日 StreamReader の代わりに C# で Excel ファイルを読み取る方法 StreamReader が Excel ファイルを読み取れない理由と、 IronXL を使用して C# .NETのディスクまたはメモリ ストリームから XLSX および XLS ワークブックを読み込む方法について説明します。 詳しく読む