IRONXLの使用 Microsoft Officeを使わずにC#でExcelファイルを開く方法 カーティス・チャウ 更新日:2026年2月27日 IronXL をダウンロード NuGet ダウンロード DLL ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る IronXL を使用すると、Microsoft Office がインストールされていなくても、C# で Excel ファイルを開いて読み込むことができますNuGetパッケージをインストールし、WorkBook.Load("file.xlsx") を使用してワークブックを読み込むだけで、入力された値と自動書式検出機能を使用して、任意のワークシート、セル、または範囲にアクセスできます。 Microsoft Officeを使わずにプログラムでExcelファイルを開こうとしたことがある人なら、従来の相互運用(Interop)のアプローチがいかに厄介なものかご存知でしょう。 相互運用機能は、Excel自体がインストールされていることを前提としており、複雑なCOM参照を必要とし、特にOfficeが利用できないサーバーやクラウド環境では、バージョン競合を引き起こすことがよくあります。 IronXLは、Officeへの依存を必要とせずに、XLSX、XLS、CSV、TSVファイルを直接読み込むことができる最新の .NETライブラリです。 クリーンで信頼性の高いC#コードを記述し、Windows、Linux、またはクラウド上でExcelファイルを処理することが可能です。COMによる自動化に伴うあらゆる煩雑な作業を回避できます。 このガイドでは、インストールから、Excelワークブックを開いて読み込むための実用的なパターンまで、すべてを網羅的に解説します。 .NETプロジェクトにIronXLをインストールするにはどうすればよいですか? 使い始めるのにかかる時間はほんの数秒です。 プロジェクトを開き、以下のいずれかのパッケージマネージャーを使用してください。 Install-Package IronXL dotnet add package IronXL Install-Package IronXL dotnet add package IronXL SHELL または、Visual Studio を開き、プロジェクトを右クリックして" NuGetパッケージの管理"を選択し、"IronXL"を検索して"インストール"をクリックします。 インストールガイドには、DockerやAzureを含む、サポートされているすべての環境に関する情報が記載されています。 インストールが完了したら、ファイルの先頭に名前空間を追加してください。 using IronXL; using IronXL; $vbLabelText $csharpLabel 必要なのはその一行だけです。 複雑なCOM参照、Officeへの依存関係、バージョン固有のアセンブリは一切ありません。 無料の評価キーを入手するには、 IronXLのトライアルライセンスページをご覧ください。 IronXLが従来の相互運用性よりも優れている理由は? 従来のExcel相互運用では、コードを実行するすべてのマシンにMicrosoft Officeがインストールされている必要があります。 これは、サーバーのデプロイ、AWS Lambda関数、およびコンテナ化されたアプリケーションには非現実的です。 IronXLはExcelファイルの解析処理をすべて内部で行い、外部依存関係のないクリーンなAPIを提供します。 Interop を使用する場合、メモリ リークを防ぐために COM オブジェクトのライフサイクルを慎重に管理する必要があります。すべての Workbook、および Worksheet オブジェクトは明示的に解放する必要があり、そうしないと Excel プロセスがバックグラウンドで蓄積されます。 IronXLは標準の .NETガベージコレクションを使用するため、COMのクリーンアップについて考える必要は一切ありません。 このライブラリは、 .NET Framework 4.6.2以降、および.NET 5、6、7、8、10をサポートしています。Windows、macOS、Linux上で変更なしで動作します。 クロスプラットフォーム環境を想定している場合、この点だけでも、Windows専用のOffice InteropよりもIronXLの方がはるかに適していると言えるでしょう。 インストールが正常に完了したことをどのように確認しますか? インストール後、任意のExcelファイルを読み込んでセル値を出力する簡単なテストを作成してください。 プロジェクトがエラーなくビルドされ、出力が期待されるデータと一致した場合、セットアップは完了です。 IronXLのドキュメントには、この検証手順を詳細に説明したクイックスタートセクションが含まれています。 セットアップ時によくある間違いは、ワークブックを本番環境に読み込む前にライセンスキーを適用するのを忘れてしまうことです。 試用モードでは、ライブラリは生成されるすべてのファイルに小さな透かしを追加します。 アプリケーションの起動時に IronXl.License.LicenseKey を設定することで、すべての操作が最初から正しいライセンスの下で実行されます。 Excelワークブックを開いてセルの値を読み取るにはどうすればよいですか? コアとなるAPIはシンプルです。 ワークブックを読み込み、ワークシートを選択し、アドレスまたは反復処理によってセルにアクセスします。 using IronXL; // Load any Excel file -- XLSX, XLS, CSV, or TSV WorkBook workbook = WorkBook.Load("example.xlsx"); // Access the second worksheet (zero-indexed) WorkSheet worksheet = workbook.WorkSheets[1]; // Read a specific cell value decimal revenue = worksheet["E2"].DecimalValue; Console.WriteLine($"Order Total: {revenue}"); // Iterate over a range of cells foreach (var cell in worksheet["C2:C6"]) { Console.WriteLine($"Product: {cell.Text}"); } using IronXL; // Load any Excel file -- XLSX, XLS, CSV, or TSV WorkBook workbook = WorkBook.Load("example.xlsx"); // Access the second worksheet (zero-indexed) WorkSheet worksheet = workbook.WorkSheets[1]; // Read a specific cell value decimal revenue = worksheet["E2"].DecimalValue; Console.WriteLine($"Order Total: {revenue}"); // Iterate over a range of cells foreach (var cell in worksheet["C2:C6"]) { Console.WriteLine($"Product: {cell.Text}"); } $vbLabelText $csharpLabel WorkBook.Load() ファイル形式は自動的に検出されます。ファイルが XLS か XLSX かを指定する必要はありません。 workbook.GetWorkSheet("Sheet1") を使用して、インデックスまたは名前でワークシートにアクセスします。 各セルは、Textなどの型付きプロパティを公開します。 ファイルを開くためのその他のオプションについては、 "ワークブックを開く方法"ガイドを参照してください。 名前でワークシートにアクセスするにはどうすればよいですか? ワークシート名を使用する方が、数値インデックスを使用するよりも保守性が高く、特にワークブックが他のユーザーによって編集される場合にその利点が顕著になります。 次の例は、シートを名前で検索し、すべてのシートを反復処理する方法を示しています。 using IronXL; WorkBook workbook = WorkBook.Load("inventory.xlsx"); // Access worksheet by exact name WorkSheet salesSheet = workbook.GetWorkSheet("Sales Data"); Console.WriteLine($"Sales sheet rows: {salesSheet.RowCount}"); // Iterate all worksheets in the workbook foreach (WorkSheet sheet in workbook.WorkSheets) { if (sheet.Name.Contains("Inventory")) { Console.WriteLine($"Found inventory sheet: {sheet.Name}"); } } using IronXL; WorkBook workbook = WorkBook.Load("inventory.xlsx"); // Access worksheet by exact name WorkSheet salesSheet = workbook.GetWorkSheet("Sales Data"); Console.WriteLine($"Sales sheet rows: {salesSheet.RowCount}"); // Iterate all worksheets in the workbook foreach (WorkSheet sheet in workbook.WorkSheets) { if (sheet.Name.Contains("Inventory")) { Console.WriteLine($"Found inventory sheet: {sheet.Name}"); } } $vbLabelText $csharpLabel Excelファイルの読み込みガイドでは、動的に生成されたシート名を持つブックの操作方法など、その他のワークシートへのアクセスパターンについて説明しています。 Excelのセルから様々なデータ型を読み取るにはどうすればよいですか? IronXLは、一般的なExcelデータ型すべてに対応する型付きアクセサーを提供します。 文字列、整数、小数、日付、ブール値、数式の結果を、手動で解析することなく読み込むことができます。 using IronXL; WorkBook wb = WorkBook.Load(@"C:\Data\Inventory.xlsx"); WorkSheet ws = wb.GetWorkSheet("Products"); // Read different data types directly string productName = ws["A2"].StringValue; int quantity = ws["B2"].IntValue; decimal price = ws["C2"].DecimalValue; DateTime updated = ws["D2"].DateTimeValue; // Use aggregate functions on ranges for performance decimal totalStock = ws["B2:B100"].Sum(); decimal maxPrice = ws["C2:C100"].Max(); Console.WriteLine($"Product: {productName}, Qty: {quantity}, Price: {price:C}"); Console.WriteLine($"Total stock units: {totalStock}, Highest price: {maxPrice:C}"); using IronXL; WorkBook wb = WorkBook.Load(@"C:\Data\Inventory.xlsx"); WorkSheet ws = wb.GetWorkSheet("Products"); // Read different data types directly string productName = ws["A2"].StringValue; int quantity = ws["B2"].IntValue; decimal price = ws["C2"].DecimalValue; DateTime updated = ws["D2"].DateTimeValue; // Use aggregate functions on ranges for performance decimal totalStock = ws["B2:B100"].Sum(); decimal maxPrice = ws["C2:C100"].Max(); Console.WriteLine($"Product: {productName}, Qty: {quantity}, Price: {price:C}"); Console.WriteLine($"Total stock units: {totalStock}, Highest price: {maxPrice:C}"); $vbLabelText $csharpLabel 以下の表は、利用可能な型付きアクセサーをまとめたものです。 データ型によるIronXLセル値アクセサー アクセサリー 戻り値の型 注意事項 `StringValue` 文字列 数値セルであっても常に文字列を返します。 `IntValue` int 小数値を切り捨てる `DecimalValue` decimal 財務データに最適 `DoubleValue` double 科学的または浮動小数点値の場合 `DateTimeValue` DateTime Excelのシリアル日付番号を自動的に解析します `BoolValue` ブール TRUE/FALSEセルを読み取る `Formula` 文字列 数式テキストを返します。例`=SUM(A2:D2)` セルデータの読み書きに関する詳細については、セル書式設定ガイドおよびデータインポート方法ガイドを参照してください。 空のセルやヌルセルを安全に処理するにはどうすればよいですか? 実際のExcelファイルでは、空のセルはよく見られます。 型付きアクセサーを読み取る前に、IsEmpty プロパティを使用するか、Value で null かどうかを確認してください。 using IronXL; WorkBook workbook = WorkBook.Load("data.xlsx"); WorkSheet ws = workbook.DefaultWorkSheet; // Check if a cell is empty before reading if (!ws["A1"].IsEmpty) { Console.WriteLine(ws["A1"].StringValue); } // Provide a fallback value using a null-coalescing pattern string cellText = ws["A1"].StringValue ?? "Default Value"; // Iterate a range and skip empty cells foreach (var cell in ws["A1:A20"]) { if (!cell.IsEmpty) { Console.WriteLine(cell.Text); } } using IronXL; WorkBook workbook = WorkBook.Load("data.xlsx"); WorkSheet ws = workbook.DefaultWorkSheet; // Check if a cell is empty before reading if (!ws["A1"].IsEmpty) { Console.WriteLine(ws["A1"].StringValue); } // Provide a fallback value using a null-coalescing pattern string cellText = ws["A1"].StringValue ?? "Default Value"; // Iterate a range and skip empty cells foreach (var cell in ws["A1:A20"]) { if (!cell.IsEmpty) { Console.WriteLine(cell.Text); } } $vbLabelText $csharpLabel Excelファイルの読み込みに関するドキュメントでは、疎なデータを処理するための追加のパターンについて説明しています。これには、ワークシート内で最後に使用された行と列を検出する方法などが含まれます。 空のセルを扱う際に考慮すべきもう一つの点は、真の空白セルと空の文字列を含むセルとの違いです。 IsEmpty はセルに値がまったく含まれていない場合にのみ true を返しますが、StringValue は空白のセルと "" に明示的に設定されたセルの両方に対して空の文字列を返します。 データにテキストとしてフォーマットされたセルがあり、それらが空に見える場合は、最も正確な結果を得るために、IsEmpty と string.IsNullOrWhiteSpace(cell.StringValue) の両方を確認してください。 実運用可能なExcelリーダーを構築するにはどうすればよいでしょうか? 実用的なExcelリーダーには、ファイル検証、エラー処理、複数シートのサポート、およびオプションの出力生成機能が必要です。 次の例は、これらのパターンすべてを単一のクラスで示しています。 using IronXL; using System.IO; // Validate and load the file static List<string> CheckLowStock(string filePath) { var lowStockItems = new List<string>(); if (!File.Exists(filePath)) { Console.WriteLine($"File not found: {filePath}"); return lowStockItems; } string ext = Path.GetExtension(filePath).ToLower(); if (ext is not (".xlsx" or ".xls" or ".csv")) { Console.WriteLine($"Unsupported file type: {ext}"); return lowStockItems; } try { WorkBook workbook = WorkBook.Load(filePath); foreach (WorkSheet sheet in workbook.WorkSheets) { Console.WriteLine($"Checking sheet: {sheet.Name}"); for (int row = 2; row <= sheet.RowCount; row++) { string itemName = sheet[$"A{row}"].StringValue; int stockLevel = sheet[$"B{row}"].IntValue; if (stockLevel < 10 && !string.IsNullOrEmpty(itemName)) { lowStockItems.Add($"{itemName} -- {stockLevel} units ({sheet.Name})"); } } } } catch (Exception ex) { Console.WriteLine($"Error reading Excel file: {ex.Message}"); } return lowStockItems; } // Export results to a new workbook static void ExportReport(List<string> items, string outputPath) { WorkBook report = WorkBook.Create(); WorkSheet sheet = report.CreateWorkSheet("Low Stock Report"); sheet["A1"].Value = "Item Description"; sheet["B1"].Value = "Source Sheet"; sheet["A1:B1"].Style.Font.Bold = true; sheet["A1:B1"].Style.BackgroundColor = "#4472C4"; sheet["A1:B1"].Style.Font.Color = "#FFFFFF"; int rowIndex = 2; foreach (string item in items) { sheet[$"A{rowIndex}"].Value = item; rowIndex++; } report.SaveAs(outputPath); Console.WriteLine($"Report saved to: {outputPath}"); } // Run var lowStockItems = CheckLowStock("inventory.xlsx"); ExportReport(lowStockItems, "low-stock-report.xlsx"); using IronXL; using System.IO; // Validate and load the file static List<string> CheckLowStock(string filePath) { var lowStockItems = new List<string>(); if (!File.Exists(filePath)) { Console.WriteLine($"File not found: {filePath}"); return lowStockItems; } string ext = Path.GetExtension(filePath).ToLower(); if (ext is not (".xlsx" or ".xls" or ".csv")) { Console.WriteLine($"Unsupported file type: {ext}"); return lowStockItems; } try { WorkBook workbook = WorkBook.Load(filePath); foreach (WorkSheet sheet in workbook.WorkSheets) { Console.WriteLine($"Checking sheet: {sheet.Name}"); for (int row = 2; row <= sheet.RowCount; row++) { string itemName = sheet[$"A{row}"].StringValue; int stockLevel = sheet[$"B{row}"].IntValue; if (stockLevel < 10 && !string.IsNullOrEmpty(itemName)) { lowStockItems.Add($"{itemName} -- {stockLevel} units ({sheet.Name})"); } } } } catch (Exception ex) { Console.WriteLine($"Error reading Excel file: {ex.Message}"); } return lowStockItems; } // Export results to a new workbook static void ExportReport(List<string> items, string outputPath) { WorkBook report = WorkBook.Create(); WorkSheet sheet = report.CreateWorkSheet("Low Stock Report"); sheet["A1"].Value = "Item Description"; sheet["B1"].Value = "Source Sheet"; sheet["A1:B1"].Style.Font.Bold = true; sheet["A1:B1"].Style.BackgroundColor = "#4472C4"; sheet["A1:B1"].Style.Font.Color = "#FFFFFF"; int rowIndex = 2; foreach (string item in items) { sheet[$"A{rowIndex}"].Value = item; rowIndex++; } report.SaveAs(outputPath); Console.WriteLine($"Report saved to: {outputPath}"); } // Run var lowStockItems = CheckLowStock("inventory.xlsx"); ExportReport(lowStockItems, "low-stock-report.xlsx"); $vbLabelText $csharpLabel この例ではトップレベルのステートメントを使用し、ファイルパスと拡張子の検証、ワークブックの読み込み、すべてのワークシートの反復処理、ビジネスロジックの適用、結果の新規ファイルへの書き込みといったワークフロー全体を網羅しています。ワークブックの書き込みと保存の詳細については、 "Excel ファイル書き込みガイド"および"Excel エクスポート方法"を参照してください。 ExportReport メソッドは、ソース ファイルを変更するのではなく、WorkBook.Create() を使用して新しいワークブックを作成することに注意してください。ソース ファイルと出力 ファイルを分離しておくことは、監査証跡の維持に役立ち、他のプロセスが依存するデータを誤って上書きしてしまうことを防ぐ良い方法です。 既存のワークブックにデータを追加する必要がある場合は、WorkBook.Load() を使用してワークブックを読み込み、適切なワークシートに行を追加し、SaveAs() を呼び出して新しいパスを指定するか、その場で上書きします。 大容量のExcelファイルを効率的に処理するにはどうすればよいでしょうか? 数千行のファイルの場合、集計関数は各セルを個別のオブジェクトとして具体化することなく内部的に動作するため、手動ループよりも優れたパフォーマンスを発揮します。 using IronXL; WorkBook workbook = WorkBook.Load("large-dataset.xlsx"); WorkSheet ws = workbook.DefaultWorkSheet; // Fast: aggregate functions operate on the range directly decimal total = ws["B2:B5000"].Sum(); decimal average = ws["B2:B5000"].Avg(); int count = ws["B2:B5000"].Count(); Console.WriteLine($"Total: {total:C}, Average: {average:C}, Rows: {count}"); // Export the worksheet to a DataSet for LINQ or database operations var dataSet = workbook.ToDataSet(); Console.WriteLine($"DataSet tables: {dataSet.Tables.Count}"); using IronXL; WorkBook workbook = WorkBook.Load("large-dataset.xlsx"); WorkSheet ws = workbook.DefaultWorkSheet; // Fast: aggregate functions operate on the range directly decimal total = ws["B2:B5000"].Sum(); decimal average = ws["B2:B5000"].Avg(); int count = ws["B2:B5000"].Count(); Console.WriteLine($"Total: {total:C}, Average: {average:C}, Rows: {count}"); // Export the worksheet to a DataSet for LINQ or database operations var dataSet = workbook.ToDataSet(); Console.WriteLine($"DataSet tables: {dataSet.Tables.Count}"); $vbLabelText $csharpLabel LINQ クエリを複数のシートにわたって実行したり、リレーショナル データベースにデータをロードしたりする必要がある場合は、DataSet に変換することが特に効果的です。 各ワークシートは、DataSet 内の DataTable となり、既存のデータアクセスコードを簡単に操作できるようになります。 詳細については、 Excelからデータセットへの変換ガイドを参照してください。 ライセンスを取得して本番環境にデプロイするにはどうすればよいですか? IronXLは商用ライブラリであり、開発およびテスト中にすべての機能を利用できる無料トライアル版が用意されています。 本番環境への導入には、有効なライセンスキーが必要です。 開発者向け、チーム向け、Enterprise向けなど、ライセンス階層の詳細については、 IronXLのライセンスページをご覧ください。 ライセンスキーを適用するには、 IronXLの呼び出しを行う前に設定してください。 IronXl.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"; IronXl.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"; $vbLabelText $csharpLabel IronXLの機能概要では、ファイルの読み書きからグラフの作成、条件付き書式の適用、名前付き範囲の操作まで、すべての機能をまとめています。 Excelファイルの作成ガイドとセルの結合方法に関する説明は、新しいワークブックを作成する際の便利な出発点となります。 C# による Excel 自動化に関するコミュニティでの議論や質問については、 Microsoft の Q&A フォーラムやStack Overflowが役立つリソースです。 NuGetの公式パッケージページには、バージョン履歴とダウンロード統計情報が掲載されています。 C#でExcelファイルを開く際の重要なポイントは何ですか? IronXLはMicrosoft Officeへの依存を完全に排除するため、サーバー上、コンテナ内、クラウド機能上でExcelファイルを処理することが実用的になります。 APIはシンプルなパターンに従います。ワークブックを読み込み、名前またはインデックスでワークシートにアクセスし、型付きアクセサーを使用してセルを読み取ります。 Max() のような集計関数は、手動で反復処理を行うオーバーヘッドなしに、大規模なデータセットを処理します。 このライブラリは、XLSX、XLS、CSV、TSV形式をサポートし、 .NET 10およびすべての最新の .NETバージョンで動作し、クロスプラットフォームに対応しています。 IronXLは標準的な.NET例外をスローするため、エラー処理は簡単です。これらの例外は、おなじみのtry/catchパターンでキャッチできます。COM相互運用エラーコードを解読する必要はありません。 利用可能なすべてのオプションを確認するには、まずIronXLのドキュメントホームを参照するか、ステップバイステップの手順が記載されたオープンワークブックのハウツーガイドをお試しください。 IronXLの無料トライアルを開始して、ご自身のプロジェクトでライブラリを評価してみてはいかがでしょうか。一切の義務は発生しません。 今IronXLを始めましょう。 無料で始める よくある質問 どのようにしてVB.NETでMicrosoft Officeを使わずにエクセルファイルを開くことができますか? IronXLライブラリを使用することで、VB.NETでMicrosoft Officeを使わずにエクセルファイルを開いて読むことができます。IronXLは、Microsoft Officeや複雑なInteropメソッドなしでエクセルファイルを操作するための簡単な方法を提供します。 VB.NETでエクセル処理のためにIronXLを使用する利点は何ですか? IronXLは、VB.NETでエクセル処理を簡略化し、Microsoft Officeや複雑なCOM参照が不要で、サーバーやクラウドプラットフォームなどの異なる環境間の互換性を保証し、バージョンの衝突を防ぎます。 IronXLを使用してXLSXおよびXLSファイルの両方を処理することは可能ですか? はい、IronXLは、XLSXおよびXLSのファイル形式の処理をサポートしており、VB.NETアプリケーションでこれらのExcelファイルを開き、読み取り、操作することができます。 IronXLを使用するために追加のソフトウェアをインストールする必要がありますか? VB.NETでのエクセルファイル処理にIronXLを使用するために追加のソフトウェアは必要ありません。IronXLは単独で動作し、VB.NETプロジェクトに直接統合されます。 IronXLはクラウド環境で使用できますか? はい、IronXLはクラウド環境でシームレスに動作するように設計されており、従来のExcel Interop方法でよく発生するバージョンの衝突を回避します。 IronXLはどのようにエクセルファイルの互換性を処理しますか? IronXLは、XLSXやXLSなどの複数のExcelファイル形式をサポートすることで互換性を保証し、Microsoft Officeに依存せずにそれらのファイルを操作および処理するための強力な機能を提供します。 IronXLは異なるVB.NETバージョンとの互換性がありますか? IronXLは、.NETフレームワークの異なるバージョンで作業する開発者のための多用途なソリューションとして、様々なVB.NETバージョンと互換性があります。 VB.NETでエクセルに伝統的なInteropメソッドを使用する場合の一般的な課題は何ですか? 伝統的なInteropメソッドはしばしばMicrosoft Officeを必要とし、複雑なCOM参照が含まれ、特にサーバーやクラウド環境でバージョンの衝突を引き起こしやすいです。IronXLは、これらの課題に対し、信頼性があり簡単なアプローチを提供します。 IronXLは、例えばデータの編集やエクスポートなど、エクセルファイル操作に使用できますか? はい、IronXLは、エクセルファイルの読み取りだけでなく、編集やデータのエクスポートのための機能を提供し、VB.NETにおけるエクセルファイル操作ための包括的なツールです。 VB.NETでのIronXLの使い方に関する作業コード例をどこで見つけられますか? IronXLのドキュメントやチュートリアルには、VB.NETでMicrosoft Officeを使わずにエクセルファイルを処理するためのステップバイステップのガイダンスと作業コード例が提供されています。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター 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#でCSVファイルをDataTableに読み込む方法C# CSV ファイル リーダー: I...
更新日 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 ワークブックを読み込む方法について説明します。 詳しく読む