透かしなしで本番環境でテストしてください。
必要な場所で動作します。
30日間、完全に機能する製品をご利用いただけます。
数分で稼働させることができます。
製品トライアル期間中にサポートエンジニアリングチームへの完全アクセス
この記事では、IronXLライブラリを使用して、C#コンソールアプリケーションでMicrosoft Excelファイルを開き、データを書き込む方法を説明します。
IronXL は、C# アプリケーションで Excel ファイルの作成、読み取り、および編集を容易にする .NET Excel ライブラリです。 優れたパフォーマンスと正確な出力を提供します。 ライブラリは、XLS、XLSX、XLSM、CSV、およびTSVを含むすべてのExcelワークブックファイル形式をサポートしています。さらに、データをJSON、HTML、バイナリ、バイト配列、DataSet、またはDataTableの形式で保存またはエクスポートすることができます。
IronXLを使用すると、開発者はワークシートやセル範囲をシームレスに操作できます。 それは、シート内で数式を編集し、簡単に再計算する機能を提供します。 データの並べ替えは、範囲、列、行に基づいて簡単に行えます。 ライブラリは、ペインの固定、行/列の自動サイズ調整、行/列の追加/削除などのレイアウトを変更する機能を提供します。
IronXLは、ユーザーのパスワードと編集権限でExcelファイルを保護することも可能にします。 もう一つの注目すべき機能は、Excelワークシートから画像を追加、削除、抽出できることです。 このライブラリは、さまざまなセルデータ形式をサポートする多様なExcel機能を提供します。 これらの機能により、IronXLはExcelファイルを扱うための最もユーザーフレンドリーなAPIの一つとなっています。
IronXLの大きな利点の一つは、マシンにMicrosoft Excelをインストールする必要がないことです。これにより、Office Interopや他の依存関係が不要になります。 複数のプラットフォームと互換性があり、.NET 7、6、5をサポートしています。.NET Core 2および3、さらにExcelスプレッドシートで作業するための.NET Framework 4.5以降のバージョンとも互換性があります。
アプリケーションを作成するには、最新バージョンのVisual Studio IDEを推奨します。 Visual StudioはC#開発のための公式IDEであり、既にインストールされていることが前提となっています。 Visual Studioをインストールしていない場合は、公式のMicrosoft Visual Studioのウェブサイトからダウンロードできます。
以下の手順に従って、新しいプロジェクト「DemoApp」を作成してください。
Visual Studioを開き、「新しいプロジェクトの作成」をクリックしてください。
新しいプロジェクト
コンソールアプリケーションを選択し、次へをクリックしてください
新しいプロジェクトタイプ
プロジェクト名を入力してください
新しいプロジェクト名
.NETバージョンを選択してください。 安定版の.NET 6.0を選択してください。
新規プロジェクト追加情報
プロジェクトが作成されたら、使用するためにIronXLライブラリをプロジェクトにインストールする必要があります。 インストールするには、次の手順に従ってください。
ソリューション エクスプローラーまたはツールから「ソリューション用 NuGet パッケージの管理」を開きます。
NuGet パッケージ マネージャー
IronXLライブラリを参照し、現在のプロジェクトを選択します。 インストールをクリックしてください。
NuGet パッケージ マネージャの UI で IronXL パッケージを検索してインストールする
Program.cs
ファイルの先頭に次の名前空間を追加します。
using IronXL;
using IronXL;
Imports IronXL
IronXLは、既存のExcelファイルを開く機能や、新しいExcelファイルを作成する機能を提供します。この例では、C# IronXLを使用して既存のファイルを開く方法を示します。
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
では、最初のワークシートを選択しましょう。 インデックス番号または名前でワークシートを選択できます。 DefaultWorkSheet
プロパティは、最初のシートを取得するのに役立ちます。
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets [0];
// Select worksheet by name
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets [0];
// Select worksheet by name
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets (0)
' Select worksheet by name
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Get any existing worksheet
Dim firstSheet As WorkSheet = workBook.DefaultWorkSheet
上記のコードはExcelワークブックから最初のシートを取得します。 新しいExcelファイルをデータで作成するには、こちらのコード例のページをご覧ください。
では、IronXLオブジェクトライブラリを使用してExcelファイルにデータを書き込みましょう。
IronXLを使用してExcelファイルにデータを書き込むのは非常に簡単です。 それをアーカイブする方法は複数ありますが、最も簡単な方法はExcelセル参照を使用することです。
// Access A1 cell and write the value
workSheet ["A1"].Value = "Value using cell reference";
// Access A1 cell and write the value
workSheet ["A1"].Value = "Value using cell reference";
' Access A1 cell and write the value
workSheet ("A1").Value = "Value using cell reference"
データを一連のセルに書き込むことも可能です。 以下のコードは、セルB1からB5までのデータを書き込む。
workSheet ["B1:B5"].Value = "Range value";
workSheet ["B1:B5"].Value = "Range value";
workSheet ("B1:B5").Value = "Range value"
範囲を動的にするためにfor
ループを使用して埋めることもできます。 コードは次のようになります:
//specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
//write the Dynamic value in one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
ws ["D" + i].Value = "Value: " + i;
}
//specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
//write the Dynamic value in one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
ws ["D" + i].Value = "Value: " + i;
}
'specify range in which we want to write the values
For i As Integer = 1 To 5
'write the Dynamic value in one row
workSheet ("C" & i).Value = "Value: " & i
'write the Dynamic value in another row
ws ("D" & i).Value = "Value: " & i
Next i
データをExcelファイルに書き込む別の方法は、Replace
メソッドを使用することです。
workSheet ["D5"].Replace("Value: 5", "Replaced Value");
workSheet ["D5"].Replace("Value: 5", "Replaced Value");
workSheet ("D5").Replace("Value: 5", "Replaced Value")
このセクションでは、新しく書き込まれたコンテンツを含むExcelファイルを保存する方法について説明します。
workBook.SaveAs("sample.xlsx");
workBook.SaveAs("sample.xlsx");
workBook.SaveAs("sample.xlsx")
コードは次のようになります:
using System;
using IronXL;
static void Main(string [] args)
{
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets [0];
// Access A1 cell and write the value
workSheet ["A1"].Value = "Value using cell reference";
workSheet ["B1:B5"].Value = "Range value";
//specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
//write the Dynamic value in one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
workSheet ["D" + i].Value = "Value: " + i;
}
workSheet ["D5"].Replace("Value: 5", "Replaced Value");
workBook.SaveAs("sample.xlsx");
Console.WriteLine("successfully written in Excel File");
}
using System;
using IronXL;
static void Main(string [] args)
{
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets [0];
// Access A1 cell and write the value
workSheet ["A1"].Value = "Value using cell reference";
workSheet ["B1:B5"].Value = "Range value";
//specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
//write the Dynamic value in one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
workSheet ["D" + i].Value = "Value: " + i;
}
workSheet ["D5"].Replace("Value: 5", "Replaced Value");
workBook.SaveAs("sample.xlsx");
Console.WriteLine("successfully written in Excel File");
}
Imports System
Imports IronXL
Shared Sub Main(ByVal args() As String)
' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets (0)
' Access A1 cell and write the value
workSheet ("A1").Value = "Value using cell reference"
workSheet ("B1:B5").Value = "Range value"
'specify range in which we want to write the values
For i As Integer = 1 To 5
'write the Dynamic value in one row
workSheet ("C" & i).Value = "Value: " & i
'write the Dynamic value in another row
workSheet ("D" & i).Value = "Value: " & i
Next i
workSheet ("D5").Replace("Value: 5", "Replaced Value")
workBook.SaveAs("sample.xlsx")
Console.WriteLine("successfully written in Excel File")
End Sub
C#でExcelファイルデータを読み取る方法の詳細については、この例をご覧ください。
ファイルの出力は:
出力Excelファイル
この記事では、IronXLを使用してC#でExcelファイルにデータを書き込む方法を説明しました。 IronXLは、既存のExcelファイルを手間なく操作する機能を提供します。 また、簡単な構文で新しいExcelファイルを作成し、データを書き込むこともできます。 IronXLは、Microsoft ExcelアプリケーションがインストールされていなくてもExcelファイルを読み取るために使用できます。 Excelファイルからデータを読み取るには、このコード例のページをご覧ください。
IronXL は開発には無料で使用でき、商用利用にはライセンスが必要です。 商業利用向けにIronXLの無料試用版もお試しいただけます。