IRONXLの使用 IronXLを使用して Excel ファイルを DataTable にインポートする カーティス・チャウ 更新日:2026年2月15日 IronXL をダウンロード NuGet ダウンロード DLL ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る C# IronXLを使用して Excel ファイルを DataTable にインポートする Excel ファイルを手動で解析することが開発者の一日のハイライトになることはほとんどないというのは周知の事実です。 私たちは皆、従来の OLEDB 接続文字列に取り組んだり、構造化されていないスプレッドシート データを.NETアプリケーションが実際に理解できるものにマッピングしようとしたりした経験があります。 C# の DataTable は優れたイコライザーです。 これは完璧なブリッジとして機能し、それらの行と列を、LINQ クエリ、DataGrid バインディング、または SQL データベースへの簡単なアクセスにすぐに使用できる使い慣れた構造に変換します。 IronXL は、このプロセスの面倒な作業を軽減します。 複雑な構成の代わりに、単一の直感的な ToDataTable メソッドを使用して変換を処理します。 レポート ツールを構築する場合でも、データ移行スクリプトを構築する場合でも、Excel データを簡単にインポートする方法は次のとおりです。 一緒にフォローしてみませんか? IronXL の無料トライアルを使用して、この強力なライブラリを実際に試してみてください。 How Can You Import an Excel File into a DataTable in C#? C# で Excel ファイルを DataTable にインポートするには、WorkBook.Load を使用してブックを読み込み、対象のワークシートにアクセスして、ToDataTable メソッドを呼び出します。 このアプローチは、XLSX ファイル、XLS、XLSM、および CSV 形式で機能します。 必要なクラスにアクセスするには、次の名前空間を参照するようにしてください。 NuGetパッケージ マネージャーを使用して Visual Studio で次のコマンドを実行し、 NuGetパッケージ マネージャー経由でIronXL をインストールします。 Install-Package IronXl.Excel 次に、次の簡潔なコード スニペットを使用してデータを移動します。 using IronXL; using System; using System.Data; class Program { static void Main(string[] args) { // Load the Excel file from the specified path string filePath = "sales-data.xlsx"; WorkBook workbook = WorkBook.Load(filePath); // Access the first worksheet in the workbook WorkSheet worksheet = workbook.DefaultWorkSheet; // Convert worksheet to DataTable with first row as column headers DataTable dt = worksheet.ToDataTable(true); // Display the imported data foreach (DataRow row in dt.Rows) { Console.WriteLine(string.Join(" | ", row.ItemArray)); } } } using IronXL; using System; using System.Data; class Program { static void Main(string[] args) { // Load the Excel file from the specified path string filePath = "sales-data.xlsx"; WorkBook workbook = WorkBook.Load(filePath); // Access the first worksheet in the workbook WorkSheet worksheet = workbook.DefaultWorkSheet; // Convert worksheet to DataTable with first row as column headers DataTable dt = worksheet.ToDataTable(true); // Display the imported data foreach (DataRow row in dt.Rows) { Console.WriteLine(string.Join(" | ", row.ItemArray)); } } } $vbLabelText $csharpLabel 出力 WorkBook.Load メソッドは、文字列 filePath の場所から Excel ファイルを読み取り、すべての Excel シート データを含むワークブック オブジェクトを作成します。 ToDataTable(true) パラメータは、最初の行に列ヘッダーが含まれていることを示します。この列ヘッダーは、データ テーブルの列名として自動的に使用されます。 Excel ファイルのデータを DataTable に読み込む最適な方法は何ですか? Excel ファイルの内容を効率的に読み取るには、ヘッダー行と生データのシナリオの両方を処理する必要があります。 IronXL の ToDataTable メソッドは、最初の行を列名として扱うかデータとして扱うかを決定するブール パラメータを受け入れます。 拡張プロパティの処理や複雑なセル タイプの変換には追加の構成が必要になる場合がありますが、デフォルトの方法ではほとんどの場合が確実に処理されることに注意してください。 using IronXL; using System.Data; // Load workbook from file path string filePath = @"C:\Data\inventory.xlsx"; WorkBook workbook = WorkBook.Load(filePath); WorkSheet worksheet = workbook.WorkSheets[0]; // First row as headers (true) or as data (false) DataTable dataTableWithHeaders = worksheet.ToDataTable(true); DataTable dataTableWithoutHeaders = worksheet.ToDataTable(false); // Process each row in the DataTable foreach (DataRow row in dataTableWithHeaders.Rows) { for (int i = 0; i < dataTableWithHeaders.Columns.Count; i++) { object value = row[i]; Console.Write($"{value}\t"); } Console.WriteLine(); } using IronXL; using System.Data; // Load workbook from file path string filePath = @"C:\Data\inventory.xlsx"; WorkBook workbook = WorkBook.Load(filePath); WorkSheet worksheet = workbook.WorkSheets[0]; // First row as headers (true) or as data (false) DataTable dataTableWithHeaders = worksheet.ToDataTable(true); DataTable dataTableWithoutHeaders = worksheet.ToDataTable(false); // Process each row in the DataTable foreach (DataRow row in dataTableWithHeaders.Rows) { for (int i = 0; i < dataTableWithHeaders.Columns.Count; i++) { object value = row[i]; Console.Write($"{value}\t"); } Console.WriteLine(); } $vbLabelText $csharpLabel 出力 この柔軟性により、 IronXL は構造に関係なく Excel スプレッドシート ファイルを処理するのに最適です。 EPPlus パッケージや新しい OleDbDataAdapter インスタンスを必要とする従来の方法とは異なり、 IronXL は単一のメソッド呼び出しで変換を処理します。 このライブラリは、Microsoft Excel のインストールを必要とせずに、.NET Core、 .NET Framework、およびクロスプラットフォームの展開をサポートします。 複数の Excel ワークシートをデータセットに変換するにはどうすればよいですか? Excel ブックに複数のシートが含まれている場合、DataSet に変換すると、各 Excel ワークシートがコレクション内の個別の DataTable として保持されます。 このアプローチは、レポート アプリケーションや複数シートのデータ処理に不可欠です。 using IronXL; using System; using System.Data; // Load multi-sheet workbook WorkBook workbook = WorkBook.Load("quarterly-reports.xlsx"); // Convert entire workbook to DataSet (each sheet becomes a DataTable) DataSet dataset = workbook.ToDataSet(); // Iterate through all tables in the DataSet foreach (DataTable table in dataset.Tables) { Console.WriteLine($"Sheet: {table.TableName}"); Console.WriteLine($"Rows: {table.Rows.Count}, Columns: {table.Columns.Count}"); foreach (DataRow row in table.Rows) { Console.WriteLine(string.Join(", ", row.ItemArray)); } } using IronXL; using System; using System.Data; // Load multi-sheet workbook WorkBook workbook = WorkBook.Load("quarterly-reports.xlsx"); // Convert entire workbook to DataSet (each sheet becomes a DataTable) DataSet dataset = workbook.ToDataSet(); // Iterate through all tables in the DataSet foreach (DataTable table in dataset.Tables) { Console.WriteLine($"Sheet: {table.TableName}"); Console.WriteLine($"Rows: {table.Rows.Count}, Columns: {table.Columns.Count}"); foreach (DataRow row in table.Rows) { Console.WriteLine(string.Join(", ", row.ItemArray)); } } $vbLabelText $csharpLabel 出力 ToDataSet メソッドは、すべてのワークシートの DataTable オブジェクトを含む新しい DataSet を作成します。 各テーブルの TableName プロパティは元の Excel シート名を反映するため、処理中に特定のデータを簡単に参照できます。 Excel からデータベースにデータをインポートするにはどうすればよいですか? 一般的なワークフローでは、Excel ファイルのデータを読み取り、それをデータベース システムに挿入します。 DataTable 構造は、データベース操作のために ADO .NETとシームレスに統合されます。 using IronXL; using System.Data; using System.Data.SqlClient; string filePath = @"C:\imports\customer-data.xlsx"; WorkBook workbook = WorkBook.Load(filePath); WorkSheet worksheet = workbook.DefaultWorkSheet; // Convert Excel data to DataTable DataTable dt = worksheet.ToDataTable(true); // Validate data before database insert if (dt == null || dt.Rows.Count == 0) { Console.WriteLine("No data to import"); return; } // Insert into database using SqlBulkCopy string connectionString = "Server=.;Database=Sales;Trusted_Connection=True;"; using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connection)) { bulkCopy.DestinationTableName = "Customers"; bulkCopy.WriteToServer(dt); } } Console.WriteLine($"Imported {dt.Rows.Count} records successfully"); using IronXL; using System.Data; using System.Data.SqlClient; string filePath = @"C:\imports\customer-data.xlsx"; WorkBook workbook = WorkBook.Load(filePath); WorkSheet worksheet = workbook.DefaultWorkSheet; // Convert Excel data to DataTable DataTable dt = worksheet.ToDataTable(true); // Validate data before database insert if (dt == null || dt.Rows.Count == 0) { Console.WriteLine("No data to import"); return; } // Insert into database using SqlBulkCopy string connectionString = "Server=.;Database=Sales;Trusted_Connection=True;"; using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connection)) { bulkCopy.DestinationTableName = "Customers"; bulkCopy.WriteToServer(dt); } } Console.WriteLine($"Imported {dt.Rows.Count} records successfully"); $vbLabelText $csharpLabel このコードは、Excel ファイルを読み込み、それを DataTable に変換し、一括データベース挿入を実行する方法を示しています。 null チェックにより、インポート操作を試行する前にデータの整合性が確保されます。 DataTable を Excel にエクスポートするにはどうすればよいですか? IronXL は双方向のデータ フローをサポートしており、レポートやデータのエクスポートのシナリオ用に DataTable オブジェクトから Excel ファイルを作成できます。 using IronXL; using System.Data; // Create sample DataTable DataTable dt = new DataTable("Products"); dt.Columns.Add("ProductID", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Price", typeof(decimal)); dt.Rows.Add(1, "Widget", 29.99m); dt.Rows.Add(2, "Gadget", 49.99m); // Create new workbook and load DataTable WorkBook workbook = WorkBook.Create(); workbook.LoadWorkSheetsFromDataSet(new DataSet { Tables = { dt } }); // Save as Excel file workbook.SaveAs("exported-products.xlsx"); using IronXL; using System.Data; // Create sample DataTable DataTable dt = new DataTable("Products"); dt.Columns.Add("ProductID", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Price", typeof(decimal)); dt.Rows.Add(1, "Widget", 29.99m); dt.Rows.Add(2, "Gadget", 49.99m); // Create new workbook and load DataTable WorkBook workbook = WorkBook.Create(); workbook.LoadWorkSheetsFromDataSet(new DataSet { Tables = { dt } }); // Save as Excel file workbook.SaveAs("exported-products.xlsx"); $vbLabelText $csharpLabel 出力 LoadWorkSheetsFromDataSet メソッドは、DataTable オブジェクトを含む DataSet を受け入れ、対応するワークシートを作成します。 DataTable を Excel にエクスポートする方法の詳細については、ドキュメントをご覧ください。 結論 IronXL は、Excel から DataTable への変換の複雑さを、簡単なメソッド呼び出しに変換します。 単一の Excel ワークシートをインポートする場合でも、複数シートのワークブックを完全な DataSet に処理する場合でも、ライブラリは XLSX ファイル、データ型の変換、およびストリームベースの読み込みを効率的に処理します。 DataTable の柔軟性と IronXL の直感的な API を組み合わせることで、データベース統合、レポート システム、アプリケーション データ バインディングのための強力なデータ ワークフローが可能になります。 IronXLをダウンロードしてExcel データ処理を効率化するか、本番環境展開用のライセンスを購入してください。 今IronXLを始めましょう。 無料で始める よくある質問 C# を使用して Excel ファイルを DataTable にインポートするにはどうすればよいですか? IronXLを使用すると、C#でExcelファイルをDataTableに簡単にインポートできます。IronXLは、Excelファイルを読み込み、DataTableに変換してさらに操作するためのシンプルなAPIを提供します。 C# での Excel ファイル操作に IronXL を使用する利点は何ですか? IronXLは、Excelファイルの読み込み、書き込み、そしてDataTablesなどの様々な形式への変換など、C#でExcelファイルを操作するための堅牢なソリューションを提供します。主要なExcelファイル形式をすべてサポートし、高いパフォーマンスと使いやすさを実現します。 IronXLは.NET Coreに対応していますか? はい、 IronXL は.NET Coreと完全に互換性があり、Excel ファイルの操作を必要とするアプリケーションのクロスプラットフォーム開発と展開を可能にします。 IronXL を使用して、さまざまな形式の Excel ファイルを読み取ることはできますか? IronXL は、XLSX、XLS、CSV、TSV などさまざまな形式の Excel ファイルの読み取りをサポートしており、さまざまな種類の Excel データを柔軟に処理できます。 IronXL はExcel ファイルのセキュリティ機能をサポートしていますか? はい、 IronXL はパスワードで保護された Excel ファイルをサポートしているため、C# アプリケーションでセキュリティ保護された Excel ドキュメントを読み込んで操作できます。 IronXLを使用して Excel ファイルを DataTable に変換するにはどうすればよいですか? IronXL を使用すると、ワークブックを読み込み、ワークシートを選択し、組み込みメソッドを使用してワークシート データを DataTable にエクスポートすることで、Excel ファイルを DataTable に変換できます。 IronXL を使用するとどのような種類のアプリケーションがメリットを得られますか? IronXL は、データ分析ツール、レポート システム、Excel データのインポート、エクスポート、変更が必要なソフトウェアなど、Excel データの操作を必要とするあらゆるアプリケーションに最適です。 Excel ファイルを DataTable にインポートした後、 IronXL を使用して編集できますか? はい、 IronXL、Excel ファイルを DataTable にインポートした後でも編集および更新できるため、変更内容の変更と保存をシームレスに行うことができます。 IronXLを使用するにはどの程度のレベルのコーディング経験が必要ですか? IronXLは使いやすさを重視して設計されており、あらゆる経験レベルの開発者が利用できるユーザーフレンドリーな API を備えているため、初心者から上級者まで誰でも利用できます。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター 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 をインポートする | ASP.NET Coreチュートリアル | IronXLExcelオブジェクトをC#で解...
更新日 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 ワークブックを読み込む方法について説明します。 詳しく読む