IRONXLの使用

データテーブルを最速でExcelにエクスポートする方法

更新済み 3月 30, 2023
共有:

この記事では、C#でDataTableを作成し、そのデータをIronXL .NET Excelライブラリを使用してExcelドキュメントにエクスポートする方法を解説します。

IronXL .NET Excelライブラリ

IronXL は、Excelファイルを簡単に作成するのに役立つC# .NETライブラリです。 新しく作成されたExcelワークブックに複数のシートを追加することができます。 それは、C#でExcelファイルを扱うためのほぼすべてのMicrosoft Excelの機能を提供します。 開発者がCSVファイルとExcelファイルを開くことや、既存のExcelワークシートのデータを修正するのを支援します。

最も重要な点は、IronXLがMicrosoft Office Interopなしで動作することです。これにより、Microsoft Officeやその他の特別な依存関係をインストールする必要がありません。 IronXLは、.NET Coreおよび.NET Framework 5、6、7で動作します。

IronXL を使用すると、ファイルを保存または データを様々な形式でエクスポートする XLSやXLSX、CSVデータやTSV、JSON、XMLやHTML、バイナリおよびバイト配列。 役立ちます メタデータを編集, ワークブックの権限とパスワード, 数式の編集レイアウトを編集し、セル範囲と作業し、 セルスタイル その他の多くの Excel 機能。

データテーブルからExcelファイルへデータをエクスポートする手順

前提条件

DataTable をExcelファイルにエクスポートするためにIronXLをC#で使用するには、以下のコンポーネントをローカルコンピュータにインストールする必要があります。 それでは、一つずつ見ていきましょう。

  1. Visual Studio - Visual StudioはC#プログラミングのためのIDEであり、インストールする必要があります。 以下のリンクから最新バージョンをダウンロードしてインストールできます: Visual Studioウェブサイト.

    • IDEが設定されると、DataTableをExcelにエクスポートするためのコンソールアプリケーション/Windowsフォームを作成する必要があります。 以下のスクリーンショットは、プロジェクトの作成方法を示しています。

      データテーブルをエクセルに最速でエクスポートする方法、図1:プロジェクトを作成

      プロジェクトを作成

      データテーブルをエクセルに最速でエクスポートする方法, 図2: コンソールアプリ

      コンソールアプリ

      データテーブルを最速でExcelにエクスポートする方法、図3:プロジェクトの名前

      プロジェクト名

      データテーブルを最速でExcelにエクスポートする方法、図4: .NET Framework

      .NETフレームワーク

      最後のスクリーンショットで作成ボタンをクリックすると、"DemoApp" という名前のプロジェクトが作成されます。

  2. IronXLライブラリ - このライブラリはVisual Studioプロジェクトにダウンロードしてインストールする必要があります。 それを行う方法は複数あります。

    • Visual Studioを使用する - NuGetパッケージマネージャーを提供しており、IronXLをインストールできます。 ツールメニューまたはソリューションエクスプローラーからアクセスできます。 次のスクリーンショットはIronXLのインストールを助けます。

      最速な方法でDataTableをExcelにエクスポートする方法、図5: ソリューションエクスプローラー

      ソリューション エクスプローラー

      データテーブルを最速でExcelにエクスポートする方法、図6:ツール - NuGetパッケージマネージャー

      ツール - NuGet パッケージ マネージャー

      データテーブルを最速でExcelにエクスポートする方法、図7:IronXLの閲覧

      IronXL を参照

    • 開発者コマンド プロンプト - Visual Studioのツール メニューから、またはVisual Studio フォルダーから開発者コマンド プロンプトを開きます。 以下のコマンドを入力して、プロジェクトにIronXLをダウンロードおよびインストールしてください:
    :ProductInstall
  1. 必要な名前空間を追加 - DataTable を作成して IronXL を使用するには、両方を Program.cs ファイルの上部に参照する必要があります。
    using IronXL; //add reference...
    using System.Data;
    using IronXL; //add reference...
    using System.Data;
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

すべての前提条件が満たされたら、DataTableからExcelシートにデータをエクスポートする時です。

C#でDataTableを作成する

以下のコードは、2つの列ヘッダーと複数の行を持つデータテーブルを作成するのに役立ちます:

//new datatable dt...
DataTable dt = new DataTable();
//add column names...
dt.Columns.Add("Animal");
dt.Columns.Add("Sound");
dt.Rows.Add("Lion", "Roars"); // first row...
dt.Rows.Add("Dog", "Barks");
dt.Rows.Add("Cat", "Meows");
dt.Rows.Add("Goat", "Bleats");
dt.Rows.Add("Wolf", "Howls");
dt.Rows.Add("Cheetah", "Purrs");
//new datatable dt...
DataTable dt = new DataTable();
//add column names...
dt.Columns.Add("Animal");
dt.Columns.Add("Sound");
dt.Rows.Add("Lion", "Roars"); // first row...
dt.Rows.Add("Dog", "Barks");
dt.Rows.Add("Cat", "Meows");
dt.Rows.Add("Goat", "Bleats");
dt.Rows.Add("Wolf", "Howls");
dt.Rows.Add("Cheetah", "Purrs");
'new datatable dt...
Dim dt As New DataTable()
'add column names...
dt.Columns.Add("Animal")
dt.Columns.Add("Sound")
dt.Rows.Add("Lion", "Roars") ' first row...
dt.Rows.Add("Dog", "Barks")
dt.Rows.Add("Cat", "Meows")
dt.Rows.Add("Goat", "Bleats")
dt.Rows.Add("Wolf", "Howls")
dt.Rows.Add("Cheetah", "Purrs")
VB   C#

まず、DataTable オブジェクトが作成され、その後、「Animal」と「Sound」という列名を持つ列が追加されます。 その後、この dtオブジェクトを使用して、複数の行が追加されます。 同様に、複数の列見出しと複数の行を追加できます。

IronXLを使用してC#でExcelファイルを作成する

IronXLを使用してExcelファイルを作成するのは2ステップのプロセスであり、C#で非常に簡単に実装できます。 エクセルファイルは複数のワークシートを持つワークブックの組み合わせです。IronXLはまずエクセルを作成します。 WorkBook そして、追加するのを助けます ワークシート それに。 以下のサンプルコードは、ワークブックとワークシートの作成に役立ちます:

//create new workbook...
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet ws = wb.DefaultWorkSheet;
//create new workbook...
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet ws = wb.DefaultWorkSheet;
'create new workbook...
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim ws As WorkSheet = wb.DefaultWorkSheet
VB   C#

IronXLを使用してDataTableからExcelワークシートにデータをエクスポートする

IronXLは、とても簡単な構文でワークシートに値を追加することを可能にします。 次の手順では、どうやって データテーブルからデータをエクスポート 前のセクションで作成されたものを新しく作成されたExcelワークシートに追加します。 以下のコードをステップバイステップで見てみましょう。

Excelワークシートに列ヘッダーを追加

ws ["A1"].Value = table.Columns [0].ToString();
ws ["B1"].Value = table.Columns [1].ToString();
int rowCount = 2;
ws ["A1"].Value = table.Columns [0].ToString();
ws ["B1"].Value = table.Columns [1].ToString();
int rowCount = 2;
ws ("A1").Value = table.Columns (0).ToString()
ws ("B1").Value = table.Columns (1).ToString()
Dim rowCount As Integer = 2
VB   C#

上記のコードでは、Excelシートの列「A1」にDataTableの列1のインデックス0の値が割り当てられ、次のExcel列「B1」の値にはDataTableの列2のインデックス1の値が割り当てられます。 rowCount 変数は、DataTable から行を読み取るために値を 2 に設定されます。

Excelワークシートに行を追加

以下のコードは、DataTable の各行を読み取り、Excelファイルの新しい行に割り当てます:

foreach (DataRow row in table.Rows)
{
    ws ["A" + (rowCount)].Value = row [0].ToString();
    ws ["B" + (rowCount)].Value = row [1].ToString();
    rowCount++;
}
foreach (DataRow row in table.Rows)
{
    ws ["A" + (rowCount)].Value = row [0].ToString();
    ws ["B" + (rowCount)].Value = row [1].ToString();
    rowCount++;
}
For Each row As DataRow In table.Rows
	ws ("A" & (rowCount)).Value = row (0).ToString()
	ws ("B" & (rowCount)).Value = row (1).ToString()
	rowCount += 1
Next row
VB   C#

rowCount 変数は、毎回インクリメントされるたびに新しい行が読み取られるようになります。 データテーブルをExcelに 上記のコード内のワークシートセル。

Excelファイルを保存

最後に、Excelファイルを保存します。 SaveAs メソッド。

wb.SaveAs("DataTable_to_Excel_IronXL.xlsx");
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx");
wb.SaveAs("DataTable_to_Excel_IronXL.xlsx")
VB   C#

ファイルはCSVなどの形式でも保存できます。 (カンマ区切り値), JSON, XML。

wb.SaveAsCsv("DataTable_to_Excel_IronXL.csv");
wb.SaveAsJson("DataTable_to_Excel_IronXL.json");
wb.SaveAsXml("DataTable_to_Excel_IronXL.xml");
wb.SaveAsCsv("DataTable_to_Excel_IronXL.csv");
wb.SaveAsJson("DataTable_to_Excel_IronXL.json");
wb.SaveAsXml("DataTable_to_Excel_IronXL.xml");
wb.SaveAsCsv("DataTable_to_Excel_IronXL.csv")
wb.SaveAsJson("DataTable_to_Excel_IronXL.json")
wb.SaveAsXml("DataTable_to_Excel_IronXL.xml")
VB   C#

カスタム区切り文字で保存することもできます。

ファイルの最終出力は次のようになります:

データテーブルを最速でExcelにエクスポートする方法、図8: データテーブルからExcelへの出力

DataTableからExcelへの出力

サマリー

この記事では、C#で列と行を持つDataTableを作成し、次にIronXLを使用してデフォルトのワークシートを持つExcelワークブックを作成し、DataTableからExcelに表形式のデータをエクスポートしてXLSXファイル形式で保存する方法を示しました。

IronXLは、ExcelアプリケーションなしでもExcelファイルを操作できる直感的なC# Excelライブラリです。 これは、開発者がCSVデータ形式などの異なる形式からExcelへのエクスポートを可能にし、データの操作や計算を行うことができます。 IronXLのより強力な機能を詳しく調べるには、 コード例ページ.

IronXLは、個人の開発目的に無料で利用でき、商用利用にはライセンスが必要です。 それに加えて、全ての機能を提供します 無料試用 ニーズに合うように互換性を確保するため。 こちらからIronXLライセンスに関する詳細情報を取得できます。 ライセンスページ.

申し訳ありませんが、翻訳を行うための具体的なコンテンツが提供されていません。翻訳したい英語のテキストを入力してください。ダウンロード ソフトウェア製品。

< 以前
VB.NETでDatatableをExcelにエクスポートする方法
次へ >
C#でExcelファイルを読み取る方法

準備はできましたか? バージョン: 2024.9 新発売

無料のNuGetダウンロード 総ダウンロード数: 977,734 View Licenses >