IRONXLの使用

C#でoleDBを使用せずにExcelをデータテーブルに変換する方法

公開済み 2024年1月4日
共有:

イントロダクション

マイクロソフトエクセルは、Microsoft が開発した堅牢なスプレッドシートプログラムです。 データの整理、分析、視覚化のために広く使用されているツールです。 それはMicrosoftのOfficeスイートの一部です。 その多機能性により、Excelは専門家、個人、組織、大学などによって使用される汎用性の高いツールです。

Excelは、金融、会計、ビジネス分析、データ分析、研究、教育などの幅広い分野で広く使用されています。 その汎用性と豊富な機能セットにより、個人およびビジネスの両方の状況でデータを整理、評価、提示するための頼りになるツールです。 この記事では、OLEDB接続なしでC#でExcelをデータテーブルに変換します。

OLEDBを使用せずにC#でExcelをデータテーブルに変換する方法

  1. 新しいVisual Studioプロジェクトを作成する

  2. 必要なライブラリをインストールします。

  3. Excelファイルをオブジェクトに読み込みます。

  4. 特定のメソッドを使用して、Excelシートのデータをデータテーブルに変換する

  5. 必要に応じてデータテーブルを使用してください。

IronXLライブラリ

.NETプログラムでExcelファイルを処理するためのMicrosoft Interopの代替としてはIronXL. Microsoft InteropはExcelと接続するためにInteropアセンブリの使用を必要としますが、IronXLは.NET環境においてExcelファイルをプログラム的に操作するためのより簡単で、より効率的で、より強力な方法を提供します。

以下はIronXLを使用するメリットです:

  • パフォーマンスとリソース経済性: IronXLは、パフォーマンスとリソース効率の面でMicrosoft Interopを上回ります。これは、PCにExcelプログラムがインストールされている必要がないためです。
  • 読みやすさとシンプルさ: IronXLは、Microsoft Interopの欠点なしにExcelファイルの読み込み、書き込み、操作を容易にするシンプルなAPIを提供します。
  • 互換性と依存関係: IronXLはMicrosoft ExcelをPCにインストールする必要がないため、異なるOfficeやExcelバージョンに関する依存関係や潜在的な互換性の問題を排除します。
  • プラットフォームの独立性: Microsoft Interopが特定のMicrosoft Officeバージョンに密接に関連しているのに対し、IronXLはより広い範囲の設定とプラットフォームでの柔軟性と簡便なデプロイメントを提供します。

    IronXLは高速で使いやすく、サードパーティソフトウェアのインストールが少ないため、Excelファイルをプログラムで操作する必要がある.NET開発者にとってしばしば好まれる選択肢となります。 しかし、プロジェクトの詳細や既存のインフラストラクチャ、各ライブラリに対するユーザーの親しみやすさなどの要因が、IronXLとMicrosoft Interopのどちらを選択するかに影響を与える場合があります。

    これらのソリューションを選ぶ際には、常にアプリケーションのニーズを念頭に置いてください。 IronXLライブラリに関する詳細については、こちらをクリックしてくださいウェブサイト.

Visual Studioで新しいプロジェクトを作成

Visual Studioプログラムを開くには、ファイルメニューから「ファイル」をクリックします。 「新しいプロジェクト」を選択した後、「ウィンドウフォームアプリケーション」を選びます。

データベースなしに C# で Excel を DataTable に変換する方法: 図 1

ファイルの場所を選択したら、該当するテキストエリアにプロジェクト名を入力してください。 次に、「Create」ボタンをクリックし、以下のサンプルに示されているように必要な.NETフレームワークを選択してください。

C#でoledbを使用せずにExcelをDatatableに変換する方法:図2

選択されたアプリケーションは、その後、Visual Studioプロジェクトの構成方法を決定します。 コードを追加するには、program.csファイルに入力し、コンソール、Windows、またはWebアプリケーションを使用してアプリケーションを構築または実行することができます。

C#でExcelをoledbなしでDatatableに変換する方法: 図3

その後、ライブラリを追加してコードをテストできます。

IronXLライブラリのインストール

次のパッチにはIronXLライブラリが必要ですので、インストールしてください。 最後に、NuGet パッケージ マネージャ コンソールを起動し、以下のコマンドを入力して完了させます:

Install-Package IronXL.Excel

オレッドビーを使用せずに Excel を Datatable に変換する方法: 図 4

あるいは、NuGet パッケージマネージャーを使ってパッケージ「IronXL」を検索することもできます。 次のリストから、IronXL に関連するすべての NuGet パッケージをダウンロードするものを選択できます。

C#でExcelをoledbなしでデータテーブルに変換する方法: 図5

Excelファイルをデータテーブルに変換

以下のコードは、パッケージをインストールした後にExcelファイルを読み込み、DataTableに変換するために使用できます。

using IronXL;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
namespace DataTableWindowsForm
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        /// <summary>
        /// In Export data method pass the file path as parameter
        /// </summary>
        /// <param name="filname"></param>
        private void ExportData(string filname)
        {
            string ImportFilePath = string.Empty;
            openFileDialog1.Filter = "Excel (*.xlsx)
*.xlsx";
            DialogResult Result = openFileDialog1.ShowDialog();
            if (Result == DialogResult.OK)
            {
                ImportFilePath = openFileDialog1.FileName;
            }
            if (ImportFilePath != string.Empty)
            {
                var exceldoc = IronXL.WorkBook.LoadExcel(ImportFilePath);
                var worksheet = exceldoc.WorkSheets [0];
                datatable dt = worksheet.ToDataTable();
                dataGridView1.DataSource = dt;
            }
        }
}
}
using IronXL;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
namespace DataTableWindowsForm
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        /// <summary>
        /// In Export data method pass the file path as parameter
        /// </summary>
        /// <param name="filname"></param>
        private void ExportData(string filname)
        {
            string ImportFilePath = string.Empty;
            openFileDialog1.Filter = "Excel (*.xlsx)
*.xlsx";
            DialogResult Result = openFileDialog1.ShowDialog();
            if (Result == DialogResult.OK)
            {
                ImportFilePath = openFileDialog1.FileName;
            }
            if (ImportFilePath != string.Empty)
            {
                var exceldoc = IronXL.WorkBook.LoadExcel(ImportFilePath);
                var worksheet = exceldoc.WorkSheets [0];
                datatable dt = worksheet.ToDataTable();
                dataGridView1.DataSource = dt;
            }
        }
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

上記のコードから、Windowsフォームを使用してExcelファイルを読み込み、新しいデータセットに変換し、それをWindowsフォームのデータグリッドに読み込んでいます。 上記のコードではまず、オープンファイルダイアログコントローラーを使用してファイルシステムからxlsファイルを読み込みます。

次に、IronXL ワークブックと Loadexcel ファイル メソッドの助けを借りて、ファイル名をパラメーターとして渡します。このファイル名は、Open ファイル ダイアログ コントローラーから取得できます。 それは、Excelファイルをワークブックオブジェクトにインポートするのに役立ちます。 Excelシートを選択するために、インデックス値を使用するか、またはExcelシート名を使用してワークシートを選択します。 利用可能なメソッドToDataTableを使用することで、Excelファイルのデータを新しいデータテーブルに簡単に変換することができます。

Excelファイルをデータテーブルに変換した後、Windowsフォームで利用可能なデータグリッドコントローラーにそれらを読み込みます。 以下から、フォームとボタンがあり、Excelファイルを読み込みます。

OLEDBを使用せずにC#でExcelをデータテーブルに変換する方法: 図6

ユーザーが「Load Excel」ボタンをクリックすると、ダイアログが表示され、ファイルを読み込むことができます。

オレッドベを使用せずにC#でExcelをDataTableに変換する方法: 図7

ファイルを処理し、新しいデータテーブルに変換してデータグリッドにロードします。

OLEDBを使用せずにC#でExcelをデータテーブルに変換する方法: 図8

IronXLデータテーブルについて詳しく知るには、リンクを参照してくださいこれ.

結論

IronXLは、最も広く使用されているExcelアドオンの一つです。 それは外部の追加ライブラリに依存しません。 Microsoft Excelをインストールする必要はありません。このプログラムは自己完結型です。 それは異なるチャネルを使用して機能します。 対照的に、Interopライブラリは、Word文書を編集するために他のライブラリを使用してファイルを解析する必要があります。

IronXLは、Microsoft Excelドキュメントを使用するあらゆるプログラミングプロセスに対応する包括的なソリューションです。 考えられる操作には、計算、文字列または数字のソート、剪定、追加、検索と置換、マージと分離、そしてファイルの保存が含まれます。 スプレッドシートのデータは作成および評価でき、新しいセルデータ型も作成できます。 それはExcelデータの処理とファイルの読み書きを容易にします。

IronXLは元々 $749 で販売されていました。 代替として、ユーザーは1年間の会員費を支払うことでソフトウェアの更新とサポートを受けられます。 IronXLは、料金をお支払いいただくことで違法な再配布から保護します。 こちらをクリックしてIronXLを体験してみてください。無料試用より詳しい料金情報について。 Iron Software製品の詳細については、以下を参照してくださいこれ.

< 以前
C# で Microsoft Office を使わずに Excel ファイルを操作する
次へ >
C# Combine XLSでExcelファイルを連結またはマージする方法