フッターコンテンツにスキップ
IRONXLの使用

C# Excel自動化(開発者向けチュートリアル)

C#でのMicrosoft Excelワークシート自動化は、開発者がプログラミングの力を利用してMicrosoft Excelオブジェクトモデルとインターフェースすることで、Microsoft Excelファイルを自動的に生成、編集、および管理できるようにします。 C#の開発者は、Microsoft.Office.Interop.Excelのようなライブラリや、Microsoft Officeアプリケーションを実行するための無監督で非インタラクティブなクライアントプログラムの自動化用サードパーティソリューションを使用して、データの読み書きや追加、セルのフォーマット、チャートの作成、レポートの生成、Microsoft Office Excel関連のタスクを自動化するなど、広範なアクティビティを実行できます。

C#、Visual Basic、またはMicrosoft Visual C++でMicrosoft Excelの新しいワークブックオブジェクトを自動化することは、Excelワークシートデータを簡潔かつ正確に管理および処理するための安定して適応性のあるフレームワークを提供します。 これにより、開発者はMicrosoft Officeアプリケーションを設計し、それらにExcelオブジェクトモデルの機能をシームレスに組み込んで、データ駆動のプロセスを実行し、動的なレポートを生成できます。 この記事では、C#でのExcel自動化を探ります。

C# Excel自動化の使用方法

  1. Visual Studioプロジェクトを作成します。
  2. ライブラリIronXLをインストールします。
  3. Excelアプリケーションオブジェクトインターフェースを初期化してMicrosoft Excelを自動化します。
  4. ワークシートにアクセスし、オブジェクトを使用してデータを操作します。
  5. ワークブックを保存して閉じます。 リソースオブジェクトも解放します。

IronXL

IronXLは、C#、VB.NET、その他の.NET言語でExcelファイルを操作するのを簡単にする強力な.NETライブラリです。 XLSとXLSXの両方の形式をサポートしています。 このライブラリにより、開発者はExcelスプレッドシートをより迅速かつ簡単に作成、読み取り、書き込み、操作することができます。 また、幅広いツールと機能を提供します。

IronXLの顕著な特徴と機能には以下が含まれます:

  • データハンドリング: IronXLを使用すると、Excelワークブックのデータの読み取り、書き込み、および操作を簡単に行えます。 2次元配列を使用してセルの値にアクセスし、数式を追加し、データをフォーマットし、計算を行うことができます。
  • Excelファイルの作成と編集: 開発者は、新しいExcelファイルを作成し、既存のものを編集することに加えて、ワークシートを追加、削除、管理することができます。
  • クロスプラットフォーム互換性: IronXLはさまざまな.NETプラットフォーム(Xamarin、.NET Core、.NET Frameworkなど)と互換性があり、さまざまなアプリケーションコンテキストで使用することができます。
  • 汎用性と互換性: いくつかのExcelバージョンと互換性があり、古いXLSと最新のXLSX Excel形式の両方をサポートしています。
  • レガシーと最新Excelフォーマットのサポート: クラシックなExcelファイルフォーマット(Excel 97-2003からのXLS)とより最近のXMLベースの形式(Excel 2007からのXLSX)の両方をサポートすることで、さまざまなファイルフォーマットのニーズに対応できます。
  • 有用性: ライブラリはExcel関連のタスクを簡素化し、明確なプロパティとメソッドを備えた理解しやすいAPIを提供することで、さまざまな専門知識レベルの開発者に対応します。
  • データのエクスポートと抽出: IronXLはExcelデータのさまざまな形式へのエクスポートと、データベースや他のシステムとのシームレスなインタラクションを可能にするExcelファイルからのデータ抽出を促進します。
  • ドキュメンテーションとサポート: IronXLのライブラリをExcel関連の活動で使用するための、詳細なドキュメンテーション、チュートリアル、およびサポートを提供しています。
  • 自動化と効率性: IronXLはExcelタスクを自動化することで生産性を向上させ、手作業を減らし、データ駆動アプリケーションの作成を助けます。
  • 統合とカスタマイズ: Excelデータをさまざまな形式でエクスポートし、カスタマイズされたレポートやデータ駆動ソリューションの制作を促進するオプションを提供します。 また、データベースや他のシステムとのインターフェースも円滑に行えます。

IronXLは、金融、データ分析、レポート、ビジネスインテリジェンス、およびソフトウェア開発を含むさまざまな分野で使用されています。 開発者がExcelファイルをプログラムで操作し、データの取り扱いやExcelの統合を含む信頼性のあるソリューションを作成できるようにします。 詳しくはこちらを参照してください。

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

Visual Studioのメニューで「ファイル」をクリックしてアプリケーションを起動します。 「新しいプロジェクト」を選択し、「ウィンドウフォームアプリ」を選択します。

C# Excel Automation (Developer Tutorial): 図1 - 新しいプロジェクト

ファイルの場所を選択した後、指定されたテキストフィールドにプロジェクトファイル名を入力します。 その後、必要な.NET Frameworkを選択し、以下の例のように「作成」ボタンをクリックします。

C# Excel Automation (Developer Tutorial): 図2 - プロジェクトの設定

Visual Studioプロジェクトの構成は、選択したアプリケーションタイプに依存します。 コードを追加するためにコンソール、Windows、またはオンラインアプリケーションを使用してアプリケーションをビルドまたは実行できます。 Program.csファイルに入力ロジックを追加することができます。

C# Excel Automation (Developer Tutorial): 図3 - フレームワーク

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

IronXLライブラリをインストールする

IronXLライブラリを使用するには、NuGetパッケージマネージャーコンソールを開いて、次のコマンドを入力してインストールします:

Install-Package IronXL.Excel

C# Excel Automation (Developer Tutorial): 図4 - IronXLのインストール

もう一つの方法は、NuGetパッケージマネージャーを使用してパッケージ「IronXL」を検索することです。 IronXLに関連するすべてのNuGetパッケージのリストから、どのパッケージをダウンロードするか選択することができます。

C# Excel Automation (Developer Tutorial): 図5 - IronXL.Excel

IronXLを使用したExcelの自動化

C#でIronXLを使用した簡単なExcel自動化の例は以下に示されます。 新しいExcelファイルを作成し、セルに入力して、ワークブックを保存する方法の例です。

using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create a new Excel workbook
        WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create a new worksheet in the workbook
        WorkSheet sheet = workbook.CreateWorkSheet("output");

        // Set values in cells
        sheet["A1"].Value = "Hello";
        sheet["B1"].Value = "World";

        // Save the workbook to a specific file path
        string filePath = @"output.xlsx";
        workbook.SaveAs(filePath);

        Console.WriteLine("File created and saved successfully.");
    }
}
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create a new Excel workbook
        WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create a new worksheet in the workbook
        WorkSheet sheet = workbook.CreateWorkSheet("output");

        // Set values in cells
        sheet["A1"].Value = "Hello";
        sheet["B1"].Value = "World";

        // Save the workbook to a specific file path
        string filePath = @"output.xlsx";
        workbook.SaveAs(filePath);

        Console.WriteLine("File created and saved successfully.");
    }
}
Imports IronXL

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create a new Excel workbook
		Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)

		' Create a new worksheet in the workbook
		Dim sheet As WorkSheet = workbook.CreateWorkSheet("output")

		' Set values in cells
		sheet("A1").Value = "Hello"
		sheet("B1").Value = "World"

		' Save the workbook to a specific file path
		Dim filePath As String = "output.xlsx"
		workbook.SaveAs(filePath)

		Console.WriteLine("File created and saved successfully.")
	End Sub
End Class
$vbLabelText   $csharpLabel

このコードはIronXLを使用したExcelの自動化を簡単な例で示しています:

  1. 新しいExcelワークブックの作成: WorkBook.Create(ExcelFileFormat.XLSX)を使用して、XLSX形式の新しいExcelワークブックが作成されます。
  2. ワークシートへのアクセス: CreateWorkSheet("output")はワークブックに「output」という名前のワークシートを追加します。
  3. セルの値の設定: セルA1B1には、それぞれ「Hello」と「World」の値が割り当てられます。
  4. ワークブックの保存: SaveAs(filePath)を使用して指定されたファイルパスにワークブックを保存します。

追加の操作

  • データ操作: フィルタリング、並べ替え、セルの統合など、さまざまなデータ操作技術を活用します。
  • グラフィックスとチャート: Excelデータを使用してグラフィックスやチャートを作成します。
  • データの統合とエクスポート: データベースとExcelデータを統合し、さまざまな形式にエクスポートします。

C# Excel Automation (Developer Tutorial): 図6 - 出力

開発者は、IronXLの広範な関数集を使用して、C#でExcelファイルを操作し、データを変更し、セルをフォーマットし、さまざまなアクションをプログラムで実行できます。 これらのアクションを特定の使用ケースの要求に合わせて調整します。 IronXLは、例外を処理し、適切なリソース管理を確保することで、信頼性の高いExcelの自動化を実現します。 コードについての詳細はこちらを参照してください。

結論

金融、データ調査、レポート作成、ソフトウェア開発を含む多くの業界で、IronXL、Excelオブジェクトライブラリは広く使用されています。 これは、Excel関連の活動を最適化し、Excelファイルをプログラムで効率的に処理する動的でデータ中心のアプリケーションの作成を支援したい企業や開発者にとって重要なツールです。

要約すれば、IronXLはC#でのExcel自動化を合理化し、プログラムでExcelファイルを管理し、効率的なデータ操作を可能にし、.NETアプリケーションの生産性を高めるという、信頼性があり、機能が豊富なソリューションを提供します。 IronXLは、非商用の使用制限付きで、無料のCommunity Editionを提供しています。 有料版は、サブスクリプションまたは永続ライセンスベースのライセンスモデルを通じて、改善された機能、サポート、および完全な機能を提供し、$liteLicenseから提供されます。 最新かつ包括的なライセンス情報については、IronXLの公式ウェブサイトを参照してください。 Iron Software製品の詳細については、こちらを参照してください。

よくある質問

Interopを使用せずにC#でMicrosoft Excelタスクを自動化するにはどうすればよいですか?

IronXLライブラリを利用することで、Interopを使用せずにC#でMicrosoft Excelタスクを自動化できます。Microsoft.Office.Interop.Excelは必要なく、C#で直接Excelファイルを作成、読み取り、操作でき、より効率的なプロセスを提供します。

Excel自動化にIronXLを使用する利点は何ですか?

IronXLは、データ処理、ファイル作成、編集などのExcel自動化タスクを簡単にするユーザーフレンドリーなAPIを提供し、XLSおよびXLSX形式の両方をサポートします。Interopが不要になり、Excel自動化のためのシンプルで効率的なアプローチを提供します。

C#でExcelを使用してデータ操作を行うことはできますか?

はい、IronXLを使用して、C#でExcel内のさまざまなデータ操作を行うことができます。これには、データのフィルタリング、ソート、マージ、さらにはチャートやグラフィックスの作成が含まれます。

Visual StudioプロジェクトでIronXLを使用するにはどうすればよいですか?

Visual StudioプロジェクトでIronXLを使用するには、NuGetを介してIronXLパッケージをインストールし、新しいプロジェクトを作成して、IronXLのAPIを使用してExcelファイルと対話します。このライブラリは、プロセスを助けるための充実したドキュメントと例を提供しています。

IronXLはクロスプラットフォーム開発に適していますか?

はい、IronXLはクロスプラットフォーム開発に適しています。.NET Coreと互換性があり、Windows、macOS、Linuxを含むさまざまなオペレーティングシステムで実行できるアプリケーションを開発できます。

IronXLにはどのようなライセンスオプションが利用可能ですか?

IronXLは、非商業用に適した無料のコミュニティエディションを提供しており、いくつかの制限があります。商業用には、$749から始まる追加機能とサポートを提供する有料バージョンがあり、これらはサブスクリプションまたは永久ライセンスで利用可能です。

IronXLはExcelファイル形式をどのように扱いますか?

IronXLは古いXLS形式と最新のXLSX形式の両方をサポートしており、開発者がさまざまなバージョンのExcelファイルをシームレスに扱うことができます。これにより、幅広いExcelドキュメントとの互換性が確保されます。

IronXLを使用して恩恵を受けることができる業界は何ですか?

金融、データ分析、ビジネスインテリジェンス、ソフトウェア開発などの業界は、効率的なExcel自動化のためにIronXLを活用し、動的なデータ駆動型アプリケーションの開発を促進し、Excel関連の活動を最適化することができます。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。