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

C#でExcelファイルを操作する方法: 図1 - チュートリアル

IronXLは、Microsoft Excelのインストールを必要とせずに開発者がExcelファイルを読み書き、操作できるようにする強力なC#ライブラリです。クロスプラットフォーム互換性を提供し、直感的なAPIでXLS、XLSX、CSVなどのフォーマットをサポートしています。

C#でExcelワークブックをどのように操作しますか?

  1. Visual Studioプロジェクトを作成し、IronXL NuGetパッケージを追加します。
  2. Interopを使用せずにExcelファイルを作成します。
  3. IronXLを使用してExcelファイルにスタイルを追加します。
  4. Excelから値を読み取り、計算します。
  5. Web用途向けにExcelをHTMLに変換します。

IronXLライブラリとは何ですか?

IronXLは、Excelファイルの操作を簡素化する、 .NET向けの堅牢なライブラリです。 直感的なAPIを備えており、Excelドキュメントの操作を簡素化し、 XLS、XLSX、CSVなどのさまざまな形式をサポートしています。 この汎用性により、セル値、数式、書式設定を容易に操作できます。 IronXLはパフォーマンスを最適化しており、大容量ファイルや複雑なデータ操作を効率的に処理できると同時に、メモリ使用量も効率的に確保します。 クロスプラットフォーム互換性により、様々なオペレーティングシステムでの利便性が向上します。 主な特徴と利点は以下のとおりです。

IronXLの主な特徴は何ですか?

  1. インポートとエクスポート:

  2. データ操作:

  3. スタイリングと書式設定:

  4. セキュリティ:

  5. クロスプラットフォームの互換性:

他のExcelライブラリではなく、 IronXLを選ぶべき理由は何ですか?

  1. Microsoft Officeは不要: IronXLはMicrosoft Officeのインストールを必要としないため、軽量で導入が容易です。 2.使いやすさ: APIは直感的で使いやすく、開発者はExcelの機能をアプリケーションに迅速に統合できます。 3.パフォーマンス: IronXLはパフォーマンスを最適化しており、大容量のExcelファイルを高速かつ効率的に処理できます。 4.汎用性:ウェブ、デスクトップ、クラウドベースのソリューションなど、幅広いアプリケーションに適しています。 5.包括的なドキュメント:豊富なドキュメントとサンプルが用意されているため、開発者は簡単に開発を開始し、一般的な問題の解決策を見つけることができます。

IronXLを使い始めるにはどうすればよいですか?

.NETプロジェクトでIronXLを使用するには、開発環境が次の前提条件を満たしていることを確認してください。

IronXLを使用するための前提条件は何ですか?

  1. .NET Framework: IronXL は.NET Framework 4.5 以降をサポートしています。
  2. .NET Coreおよび.NET Standard: .NET Core 2、3、5、6、7、8、9と互換性があります。
  3. オペレーティングシステム: Windows、macOS、Linuxで動作します。 DockerAzureAWSに対応しています。
  4. Microsoft Office は不要: IronXL はOffice や Excel との相互運用性を必要としません
  5. コードエディタ:Visual StudioのようなC#コードエディタ。

プロジェクトにIronXLをインストールするにはどうすればよいですか?

IronXLは、Visual StudioのNuGetパッケージマネージャーで、またはパッケージマネージャーコンソールを使用して次のコマンドを使ってインストールできます。

dotnet add package IronXL.Excel --version 2024.8.5

Blazor.NET MAUI 、またはVB .NETプロジェクトのセットアップを含む、より詳細なインストール手順については、公式ドキュメントを参照してください。

IronXLを使って最初のExcelファイルを作成するにはどうすればよいですか?

Visual Studioプロジェクトを作成し、 IronXLライブラリを追加して、Excelファイルの操作を始めましょう。

Visual Studioプロジェクトを作成してIronXLを追加するにはどうすればよいですか?

Microsoft Visual Studioを開き、"新しいプロジェクトの作成"を選択して開始します。

Visual Studio 2022 の開始画面で、最近のプロジェクトを開く、リポジトリをクローンする、プロジェクト/ソリューションを開く、ローカルフォルダーを開く、新しいプロジェクトを作成するオプションを表示。

お好みのプロジェクトテンプレートを選択してください。ここでは、分かりやすさを考慮してコンソールアプリケーションを選択しました。

Visual Studio の"新しいプロジェクトの作成"ダイアログで、C# 用のコンソールアプリオプションを表示し、.NET Core と .NET Framework の両方のバージョンが利用可能。

プロジェクトの名前と場所を入力します。

Visual Studio プロジェクト設定ダイアログで、Windows、Linux、macOS を含む複数のプラットフォームをターゲットにした新しい C# コンソールアプリケーション 'WorkingWithIronXL' の設定を表示。

使用する.NET Frameworkのバージョンを選択します。 弊社のマシンで利用可能な最新のものを選択しました。

Visual Studio プロジェクト作成ダイアログで、.NET 8.0 フレームワークが選択され、トップレベルステートメントおよび AOT パブリッシングの追加オプションがあるコンソールアプリの設定を表示。

"作成"ボタンをクリックすると、プロジェクトが作成され、すぐに使用できるようになります。 ソリューションエクスプローラーを開いてプロジェクトファイルを確認します。

Visual Studio NuGet パッケージマネージャーで、WorkingWithIronXL という名前の C# プロジェクト用に IronXL.Excel パッケージバージョン 2024.8.5 のインストールを表示。

次に、上記のようにNuGetパッケージマネージャーからIronXLライブラリをインストールします。

Interopを使用せずにExcelファイルを作成するにはどうすればよいですか?

それでは、Microsoft Interopライブラリを使用せずにExcelファイルを作成してみましょう。 IronXLは、スプレッドシートをプログラムで作成するためのシンプルで直感的な方法を提供します。

using IronXL;

namespace WorkingWithIronXL
{
    public class Program
    {
        public static void Main()
        {
            // Create new Excel WorkBook Object
            WorkBook workBook = WorkBook.Create();
            // Create WorkSheet
            WorkSheet workSheet = workBook.CreateWorkSheet("newXlDemo");
            // Add data in new worksheet
            workSheet["A1"].Value = "IronXL is the best Excel library";           
            // Save the Excel file as XLSX
            workBook.SaveAs("myIronXlDemo.xlsx");
        }
    }
}
using IronXL;

namespace WorkingWithIronXL
{
    public class Program
    {
        public static void Main()
        {
            // Create new Excel WorkBook Object
            WorkBook workBook = WorkBook.Create();
            // Create WorkSheet
            WorkSheet workSheet = workBook.CreateWorkSheet("newXlDemo");
            // Add data in new worksheet
            workSheet["A1"].Value = "IronXL is the best Excel library";           
            // Save the Excel file as XLSX
            workBook.SaveAs("myIronXlDemo.xlsx");
        }
    }
}
Imports IronXL

Namespace WorkingWithIronXL
	Public Class Program
		Public Shared Sub Main()
			' Create new Excel WorkBook Object
			Dim workBook As WorkBook = WorkBook.Create()
			' Create WorkSheet
			Dim workSheet As WorkSheet = workBook.CreateWorkSheet("newXlDemo")
			' Add data in new worksheet
			workSheet("A1").Value = "IronXL is the best Excel library"
			' Save the Excel file as XLSX
			workBook.SaveAs("myIronXlDemo.xlsx")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

コードの説明

  1. ライブラリと連携を開始するためにIronXL名前空間を追加します。
  2. XLSX ファイルを作成するために WorkBook.Create() を使用して Excel オブジェクトを作成します。
  3. ワークブック内にワークシートを作成するために CreateWorkSheet メソッドを呼び出します。
  4. セルに値を追加するために workSheet["A1"].Value を使用します。
  5. ファイル名を指定して workBook.SaveAs を使用して Excel ファイルを節約します。

出力Excelファイル

Excel スプレッドシートに 'IronXL is the best Excel library' というテキストがセル A1 に表示され、C# で IronXL を使用したプログラムによる Excel ファイルの作成を示しています。

IronXLが相互運用性を必要としないのはなぜですか?

Microsoft Excel Interopに依存する従来のアプローチとは異なり、 IronXLはExcelファイルを直接読み書きするスタンドアロン for .NETライブラリです。 これにより、以下が実現されます。 Microsoft Officeのインストールは不要です。

  • パフォーマンスとメモリ使用量の改善
  • クロスプラットフォーム互換性( LinuxmacOSDocker ) COMオブジェクトのクリーンアップに関する問題はありません
  • スレッドセーフな操作

どのようなファイル形式で保存できますか?

IronXLは複数の形式での保存をサポートしています。

// Save as different Excel formats
workBook.SaveAs("file.xlsx"); // Excel 2007+ format
workBook.SaveAs("file.xls");  // Excel 97-2003 format
workBook.SaveAs("file.xlsm"); // Excel with macros

// Export to other formats
workBook.SaveAsCsv("file.csv", ",");  // CSV with comma delimiter
workBook.SaveAsJson("file.json");     // JSON format
workBook.SaveAsXml("file.xml");       // XML format
// Save as different Excel formats
workBook.SaveAs("file.xlsx"); // Excel 2007+ format
workBook.SaveAs("file.xls");  // Excel 97-2003 format
workBook.SaveAs("file.xlsm"); // Excel with macros

// Export to other formats
workBook.SaveAsCsv("file.csv", ",");  // CSV with comma delimiter
workBook.SaveAsJson("file.json");     // JSON format
workBook.SaveAsXml("file.xml");       // XML format
' Save as different Excel formats
workBook.SaveAs("file.xlsx") ' Excel 2007+ format
workBook.SaveAs("file.xls")  ' Excel 97-2003 format
workBook.SaveAs("file.xlsm") ' Excel with macros

' Export to other formats
workBook.SaveAsCsv("file.csv", ",")  ' CSV with comma delimiter
workBook.SaveAsJson("file.json")     ' JSON format
workBook.SaveAsXml("file.xml")       ' XML format
$vbLabelText   $csharpLabel

ファイル作成中に発生したエラーはどのように処理すればよいですか?

IronXLは包括的なエラー処理機能を提供します。 以下に、ベストプラクティスの例を示します。

try 
{
    WorkBook workBook = WorkBook.Create();
    WorkSheet workSheet = workBook.CreateWorkSheet("Demo");
    workSheet["A1"].Value = "Sample Data";

    // Check if directory exists
    string directory = @"C:\ExcelFiles\";
    if (!Directory.Exists(directory))
    {
        Directory.CreateDirectory(directory);
    }

    workBook.SaveAs(Path.Combine(directory, "output.xlsx"));
}
catch (Exception ex)
{
    Console.WriteLine($"Error creating Excel file: {ex.Message}");
}
try 
{
    WorkBook workBook = WorkBook.Create();
    WorkSheet workSheet = workBook.CreateWorkSheet("Demo");
    workSheet["A1"].Value = "Sample Data";

    // Check if directory exists
    string directory = @"C:\ExcelFiles\";
    if (!Directory.Exists(directory))
    {
        Directory.CreateDirectory(directory);
    }

    workBook.SaveAs(Path.Combine(directory, "output.xlsx"));
}
catch (Exception ex)
{
    Console.WriteLine($"Error creating Excel file: {ex.Message}");
}
Imports System
Imports System.IO

Try
    Dim workBook As WorkBook = WorkBook.Create()
    Dim workSheet As WorkSheet = workBook.CreateWorkSheet("Demo")
    workSheet("A1").Value = "Sample Data"

    ' Check if directory exists
    Dim directory As String = "C:\ExcelFiles\"
    If Not Directory.Exists(directory) Then
        Directory.CreateDirectory(directory)
    End If

    workBook.SaveAs(Path.Combine(directory, "output.xlsx"))
Catch ex As Exception
    Console.WriteLine($"Error creating Excel file: {ex.Message}")
End Try
$vbLabelText   $csharpLabel

IronXLを使用してExcelファイルにスタイルを追加するにはどうすればよいですか?

Now let's see how to add styles to Excel cells. IronXLは、プロフェッショナルな外観のスプレッドシートを作成するための包括的なスタイリングオプションを提供します。

using IronXL;

namespace WorkingWithIronXL
{
    public class Program
    {
        public static void Main()
        {
            // Create a new workbook
            WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
            // Create a new worksheet
            WorkSheet workSheet = workBook.CreateWorkSheet("StyledSheet");
            // Add multiple values to cells
            workSheet["A1"].Value = "This Styled Text with Awesome IronXL library";
            workSheet["A2"].Value = 999999;
            // Apply styles to cells
            workSheet["A1"].Style.Font.Bold = true;
            workSheet["A1"].Style.Font.Italic = true;
            workSheet["A1"].Style.Font.Height = 14;
            workSheet["A1"].Style.Font.Color = "#FF0000"; // Red color
            workSheet["A2"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Double;
            workSheet["A2"].Style.BottomBorder.SetColor("#00FF00"); // Green color
            // Save the workbook
            workBook.SaveAs("myIronXlWriteDemo.xlsx");
        }
    }
}
using IronXL;

namespace WorkingWithIronXL
{
    public class Program
    {
        public static void Main()
        {
            // Create a new workbook
            WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
            // Create a new worksheet
            WorkSheet workSheet = workBook.CreateWorkSheet("StyledSheet");
            // Add multiple values to cells
            workSheet["A1"].Value = "This Styled Text with Awesome IronXL library";
            workSheet["A2"].Value = 999999;
            // Apply styles to cells
            workSheet["A1"].Style.Font.Bold = true;
            workSheet["A1"].Style.Font.Italic = true;
            workSheet["A1"].Style.Font.Height = 14;
            workSheet["A1"].Style.Font.Color = "#FF0000"; // Red color
            workSheet["A2"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Double;
            workSheet["A2"].Style.BottomBorder.SetColor("#00FF00"); // Green color
            // Save the workbook
            workBook.SaveAs("myIronXlWriteDemo.xlsx");
        }
    }
}
Imports IronXL

Namespace WorkingWithIronXL
	Public Class Program
		Public Shared Sub Main()
			' Create a new workbook
			Dim workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
			' Create a new worksheet
			Dim workSheet As WorkSheet = workBook.CreateWorkSheet("StyledSheet")
			' Add multiple values to cells
			workSheet("A1").Value = "This Styled Text with Awesome IronXL library"
			workSheet("A2").Value = 999999
			' Apply styles to cells
			workSheet("A1").Style.Font.Bold = True
			workSheet("A1").Style.Font.Italic = True
			workSheet("A1").Style.Font.Height = 14
			workSheet("A1").Style.Font.Color = "#FF0000" ' Red color
			workSheet("A2").Style.BottomBorder.Type = IronXL.Styles.BorderType.Double
			workSheet("A2").Style.BottomBorder.SetColor("#00FF00") ' Green color
			' Save the workbook
			workBook.SaveAs("myIronXlWriteDemo.xlsx")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

コードの説明

  1. WorkBook.Create を使用して Excel ファイルを作成します。
  2. workBook.CreateWorkSheet を使用してワークシートを作成します。
  3. workSheet["A1"].Value を使用してセルに値を追加します。
  4. workSheet["A1"].Style.Font.Bold のようなプロパティを使用してセルにスタイルを追加します。
  5. workBook.SaveAs を使用してワークブックを節約します。

出力Excelファイル

Excel スプレッドシートにセル A1 に赤いイタリック体のテキスト 'This Styled Text with Awesome IronXL library' が表示され、セル A2 に緑色で '999999' と表示されています。

どのようなスタイリングオプションがありますか?

IronXLは、以下のような幅広いスタイリングオプションを提供しています。

-フォントプロパティフォントファミリー、サイズ、色、太字、斜体、下線、取り消し線 -セルの境界線:四辺すべての境界線のスタイルと色 -背景背景色とパターン -配置水平方向と垂直方向の配置オプション -数値形式:日付、通貨、パーセンテージのカスタム形式

複数のセルにスタイルを適用するにはどうすればよいですか?

セル範囲に効率的にスタイルを適用できます。

// Apply styles to a range
var range = workSheet["A1:D10"];
foreach (var cell in range)
{
    cell.Style.Font.Bold = true;
    cell.Style.Font.Color = "#0000FF"; // Blue
    cell.Style.SetBackgroundColor("#FFFF00"); // Yellow background
}
// Apply styles to a range
var range = workSheet["A1:D10"];
foreach (var cell in range)
{
    cell.Style.Font.Bold = true;
    cell.Style.Font.Color = "#0000FF"; // Blue
    cell.Style.SetBackgroundColor("#FFFF00"); // Yellow background
}
' Apply styles to a range
Dim range = workSheet("A1:D10")
For Each cell In range
    cell.Style.Font.Bold = True
    cell.Style.Font.Color = "#0000FF" ' Blue
    cell.Style.SetBackgroundColor("#FFFF00") ' Yellow background
Next
$vbLabelText   $csharpLabel

条件付き書式は使用できますか?

はい、 IronXLは条件付き書式設定をサポートしています。

// Add conditional formatting rule
var rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(
    ComparisonOperator.GreaterThan, "100");
rule.FontFormatting.Bold = true;
rule.FontFormatting.FontColor = "#FF0000"; // Red for values > 100
workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule);
// Add conditional formatting rule
var rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(
    ComparisonOperator.GreaterThan, "100");
rule.FontFormatting.Bold = true;
rule.FontFormatting.FontColor = "#FF0000"; // Red for values > 100
workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule);
' Add conditional formatting rule
Dim rule = workSheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.GreaterThan, "100")
rule.FontFormatting.Bold = True
rule.FontFormatting.FontColor = "#FF0000" ' Red for values > 100
workSheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule)
$vbLabelText   $csharpLabel

Excelから値を読み込んで計算するにはどうすればよいですか?

それでは、 IronXLを使ってExcelファイルを読み込み、計算を実行する方法を見ていきましょう。 IronXLは、データ分析のための様々な数学関数をサポートしています。

using IronXL;
using System;

namespace WorkingWithIronXL
{
    internal class IronXlDemo
    {
        public static void ReadData()
        {
            // Load the Excel worksheet
            WorkBook workBook = WorkBook.Load("sampleEmployeeData.xlsx");
            // Select the first worksheet
            WorkSheet workSheet = workBook.WorkSheets[0];
            // Read a specific cell value
            int cellValue = workSheet["A2"].IntValue;
            Console.WriteLine($"Value in A2: {cellValue}");
            // Read a range of cells
            foreach (var cell in workSheet["A1:H10"])
            {
                Console.Write($"{cell.Text}\t");
                if(cell.AddressString.Contains("H"))
                {
                    Console.WriteLine();
                }
            }
            // Calculate aggregate values
            decimal sum = workSheet["F2:F10"].Sum();
            Console.WriteLine($"Sum of F2:F10: {sum}");
        }
    }
}
using IronXL;
using System;

namespace WorkingWithIronXL
{
    internal class IronXlDemo
    {
        public static void ReadData()
        {
            // Load the Excel worksheet
            WorkBook workBook = WorkBook.Load("sampleEmployeeData.xlsx");
            // Select the first worksheet
            WorkSheet workSheet = workBook.WorkSheets[0];
            // Read a specific cell value
            int cellValue = workSheet["A2"].IntValue;
            Console.WriteLine($"Value in A2: {cellValue}");
            // Read a range of cells
            foreach (var cell in workSheet["A1:H10"])
            {
                Console.Write($"{cell.Text}\t");
                if(cell.AddressString.Contains("H"))
                {
                    Console.WriteLine();
                }
            }
            // Calculate aggregate values
            decimal sum = workSheet["F2:F10"].Sum();
            Console.WriteLine($"Sum of F2:F10: {sum}");
        }
    }
}
Imports Microsoft.VisualBasic
Imports IronXL
Imports System

Namespace WorkingWithIronXL
	Friend Class IronXlDemo
		Public Shared Sub ReadData()
			' Load the Excel worksheet
			Dim workBook As WorkBook = WorkBook.Load("sampleEmployeeData.xlsx")
			' Select the first worksheet
			Dim workSheet As WorkSheet = workBook.WorkSheets(0)
			' Read a specific cell value
			Dim cellValue As Integer = workSheet("A2").IntValue
			Console.WriteLine($"Value in A2: {cellValue}")
			' Read a range of cells
			For Each cell In workSheet("A1:H10")
				Console.Write($"{cell.Text}" & vbTab)
				If cell.AddressString.Contains("H") Then
					Console.WriteLine()
				End If
			Next cell
			' Calculate aggregate values
			Dim sum As Decimal = workSheet("F2:F10").Sum()
			Console.WriteLine($"Sum of F2:F10: {sum}")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

コードの説明

  1. WorkBook.Load を使用してExcel ファイルを読み込む
  2. ワークブックの最初のワークシートにアクセスします。
  3. 特定のセルの値を読み取り、Console.WriteLine を使用して表示します。 4.セル範囲を繰り返し処理し、各値を表示します。 H列の後に改行を印刷してください。
  4. セル範囲F2:F10の値の合計を計算し、出力します。

入力Excel

Excel スプレッドシートに社員データが表示され、ID, First Name, Last Name, Gender, Country, Age, Date, and unique identifier の列があり、9 行のサンプル社員レコードが表示されています。

出力

コンソール出力に、名前、性別、国、年齢、日付、ID フィールドを含む 10 行の人物記録があるデータテーブルが表示され、F2:F10 列の合計が 323 であると続いています。

セルから読み取れるデータ型は何ですか?

IronXLは、セルから様々なデータ型を読み取ることをサポートしています。

// Different ways to read cell values
string textValue = workSheet["A1"].StringValue;
int intValue = workSheet["B1"].IntValue;
decimal decimalValue = workSheet["C1"].DecimalValue;
double doubleValue = workSheet["D1"].DoubleValue;
DateTime dateValue = workSheet["E1"].DateTimeValue;
bool boolValue = workSheet["F1"].BoolValue;

// Read formula results
string formulaResult = workSheet["G1"].FormattedCellValue;
// Different ways to read cell values
string textValue = workSheet["A1"].StringValue;
int intValue = workSheet["B1"].IntValue;
decimal decimalValue = workSheet["C1"].DecimalValue;
double doubleValue = workSheet["D1"].DoubleValue;
DateTime dateValue = workSheet["E1"].DateTimeValue;
bool boolValue = workSheet["F1"].BoolValue;

// Read formula results
string formulaResult = workSheet["G1"].FormattedCellValue;
' Different ways to read cell values
Dim textValue As String = workSheet("A1").StringValue
Dim intValue As Integer = workSheet("B1").IntValue
Dim decimalValue As Decimal = workSheet("C1").DecimalValue
Dim doubleValue As Double = workSheet("D1").DoubleValue
Dim dateValue As DateTime = workSheet("E1").DateTimeValue
Dim boolValue As Boolean = workSheet("F1").BoolValue

' Read formula results
Dim formulaResult As String = workSheet("G1").FormattedCellValue
$vbLabelText   $csharpLabel

空のセルやnullセルはどのように処理すればよいですか?

IronXLは、空になったセルを安全に取り扱う方法を提供します。

// Check if cell is empty
if (workSheet["A1"].IsEmpty)
{
    Console.WriteLine("Cell A1 is empty");
}

// Use null-coalescing for safe value reading
string value = workSheet["A1"].StringValue ?? "Default Value";

// Check for specific content types
if (workSheet["B1"].IsNumeric)
{
    decimal numValue = workSheet["B1"].DecimalValue;
}
// Check if cell is empty
if (workSheet["A1"].IsEmpty)
{
    Console.WriteLine("Cell A1 is empty");
}

// Use null-coalescing for safe value reading
string value = workSheet["A1"].StringValue ?? "Default Value";

// Check for specific content types
if (workSheet["B1"].IsNumeric)
{
    decimal numValue = workSheet["B1"].DecimalValue;
}
' Check if cell is empty
If workSheet("A1").IsEmpty Then
    Console.WriteLine("Cell A1 is empty")
End If

' Use null-coalescing for safe value reading
Dim value As String = If(workSheet("A1").StringValue, "Default Value")

' Check for specific content types
If workSheet("B1").IsNumeric Then
    Dim numValue As Decimal = workSheet("B1").DecimalValue
End If
$vbLabelText   $csharpLabel

利用可能な集計関数にはどのようなものがありますか?

IronXLは様々な集計関数をサポートしています。

// Available aggregate functions
decimal sum = workSheet["A1:A10"].Sum();
decimal avg = workSheet["A1:A10"].Avg();
decimal min = workSheet["A1:A10"].Min();
decimal max = workSheet["A1:A10"].Max();
int count = workSheet["A1:A10"].Count();
// Available aggregate functions
decimal sum = workSheet["A1:A10"].Sum();
decimal avg = workSheet["A1:A10"].Avg();
decimal min = workSheet["A1:A10"].Min();
decimal max = workSheet["A1:A10"].Max();
int count = workSheet["A1:A10"].Count();
' Available aggregate functions
Dim sum As Decimal = workSheet("A1:A10").Sum()
Dim avg As Decimal = workSheet("A1:A10").Avg()
Dim min As Decimal = workSheet("A1:A10").Min()
Dim max As Decimal = workSheet("A1:A10").Max()
Dim count As Integer = workSheet("A1:A10").Count()
$vbLabelText   $csharpLabel

ExcelファイルをWebで使用するためのHTML形式に変換するにはどうすればよいですか?

ExcelファイルをWebで使用するためのHTMLに変換する方法を見ていきましょう。 これは、ExcelデータをWebアプリケーションに表示する際に特に役立ちます。

using IronXL;
using IronXL.Options;

namespace WorkingWithIronXL
{
    internal class IronXlDemo
    {
        public static void ConvertToHtml()
        {
            WorkBook workBook = WorkBook.Load("sampleEmployeeData.xlsx");
            var options = new HtmlExportOptions()
            {
                // Set row/column numbers visible in HTML document
                OutputRowNumbers = true,
                OutputColumnHeaders = true,
                // Set hidden rows/columns visible in HTML document
                OutputHiddenRows = true,
                OutputHiddenColumns = true,
                // Set leading spaces as non-breaking
                OutputLeadingSpacesAsNonBreaking = true
            };
            // Export workbook to the HTML file
            workBook.ExportToHtml("workBook.html", options);
        }
    }
}
using IronXL;
using IronXL.Options;

namespace WorkingWithIronXL
{
    internal class IronXlDemo
    {
        public static void ConvertToHtml()
        {
            WorkBook workBook = WorkBook.Load("sampleEmployeeData.xlsx");
            var options = new HtmlExportOptions()
            {
                // Set row/column numbers visible in HTML document
                OutputRowNumbers = true,
                OutputColumnHeaders = true,
                // Set hidden rows/columns visible in HTML document
                OutputHiddenRows = true,
                OutputHiddenColumns = true,
                // Set leading spaces as non-breaking
                OutputLeadingSpacesAsNonBreaking = true
            };
            // Export workbook to the HTML file
            workBook.ExportToHtml("workBook.html", options);
        }
    }
}
Imports IronXL
Imports IronXL.Options

Namespace WorkingWithIronXL
	Friend Class IronXlDemo
		Public Shared Sub ConvertToHtml()
			Dim workBook As WorkBook = WorkBook.Load("sampleEmployeeData.xlsx")
			Dim options = New HtmlExportOptions() With {
				.OutputRowNumbers = True,
				.OutputColumnHeaders = True,
				.OutputHiddenRows = True,
				.OutputHiddenColumns = True,
				.OutputLeadingSpacesAsNonBreaking = True
			}
			' Export workbook to the HTML file
			workBook.ExportToHtml("workBook.html", options)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

コードの説明

  1. Load メソッドを使用して Excel ファイルを読み込みます。
  2. HtmlExportOptions を使用して HTML 変換のオプションを設定します。
  3. ExportToHtml メソッドを使用して HTML に変換し、保存します。

入力

Excel スプレッドシートに社員データのサンプルが表示され、ID, First Name, Last Name, Gender, Country, Age, Date, Id の列があり、9 行の社員情報があります。

出力

HTML テーブルに First Name, Last Name, Gender, Country, Age, Date, Id の列で Excel データが表示され、サンプル社員データの 9 行が表示されています。

利用可能なHTMLエクスポートオプションにはどのようなものがありますか?

IronXLは、さまざまなHTMLエクスポートオプションを提供します。

var htmlOptions = new HtmlExportOptions()
{
    // Table formatting options
    OutputRowNumbers = true,
    OutputColumnHeaders = true,

    // Visibility options  
    OutputHiddenRows = false,
    OutputHiddenColumns = false,

    // Formatting preservation
    OutputLeadingSpacesAsNonBreaking = true,

    // Custom CSS class
    TableCssClass = "excel-table"
};
var htmlOptions = new HtmlExportOptions()
{
    // Table formatting options
    OutputRowNumbers = true,
    OutputColumnHeaders = true,

    // Visibility options  
    OutputHiddenRows = false,
    OutputHiddenColumns = false,

    // Formatting preservation
    OutputLeadingSpacesAsNonBreaking = true,

    // Custom CSS class
    TableCssClass = "excel-table"
};
Dim htmlOptions As New HtmlExportOptions() With {
    .OutputRowNumbers = True,
    .OutputColumnHeaders = True,
    .OutputHiddenRows = False,
    .OutputHiddenColumns = False,
    .OutputLeadingSpacesAsNonBreaking = True,
    .TableCssClass = "excel-table"
}
$vbLabelText   $csharpLabel

HTMLの書式設定を保持するにはどうすればよいですか?

IronXLは、HTMLにエクスポートする際に基本的な書式設定を自動的に保持します。 高度な書式保持のために:

// Export with inline CSS styles
workBook.ExportToHtml("styled.html", new HtmlExportOptions
{
    OutputRowNumbers = false,
    OutputColumnHeaders = true,
    // Preserves cell styles as inline CSS
    PreserveStyles = true
});
// Export with inline CSS styles
workBook.ExportToHtml("styled.html", new HtmlExportOptions
{
    OutputRowNumbers = false,
    OutputColumnHeaders = true,
    // Preserves cell styles as inline CSS
    PreserveStyles = true
});
' Export with inline CSS styles
workBook.ExportToHtml("styled.html", New HtmlExportOptions With {
    .OutputRowNumbers = False,
    .OutputColumnHeaders = True,
    ' Preserves cell styles as inline CSS
    .PreserveStyles = True
})
$vbLabelText   $csharpLabel

特定のワークシートのみをエクスポートすることはできますか?

はい、個々のワークシートをエクスポートできます。

// Export specific worksheet
WorkSheet sheet = workBook.GetWorkSheet("Sheet1");
sheet.SaveAsHtml("sheet1.html");

// Export multiple specific sheets
foreach (var sheetName in new[] { "Sheet1", "Sheet3" })
{
    workBook.GetWorkSheet(sheetName).SaveAsHtml($"{sheetName}.html");
}
// Export specific worksheet
WorkSheet sheet = workBook.GetWorkSheet("Sheet1");
sheet.SaveAsHtml("sheet1.html");

// Export multiple specific sheets
foreach (var sheetName in new[] { "Sheet1", "Sheet3" })
{
    workBook.GetWorkSheet(sheetName).SaveAsHtml($"{sheetName}.html");
}
' Export specific worksheet
Dim sheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
sheet.SaveAsHtml("sheet1.html")

' Export multiple specific sheets
For Each sheetName As String In {"Sheet1", "Sheet3"}
    workBook.GetWorkSheet(sheetName).SaveAsHtml($"{sheetName}.html")
Next
$vbLabelText   $csharpLabel

IronXLの実際の使用事例にはどのようなものがありますか?

IronXLは、実際の幅広い用途に対応する汎用的な.NETライブラリです。

1. ビジネスレポーティング: ・売上概要や財務諸表などの定期報告書の作成を自動化する。 ・様々なデータソースからカスタムダッシュボードを作成する。 ・関係者向けプレゼンテーション用にデータをExcelにエクスポートする

2. データ分析: ・統計分析および変換のために、大規模なデータセットを処理する。 ・関係者による検討のために、分析済みデータをエクスポートする集計関数を使用して、迅速な分析結果を得る。

3. 在庫管理: ・在庫レベルと仕入先情報に基づいて製品在庫を管理する。 ・在庫状況レポートを作成し、傾向を把握する。

4. 顧客関係管理(CRM): ・詳細な分析のために顧客データをエクスポートする。 -変更されたデータをインポートしてCRMレコードを更新する。 -条件付き書式設定を使用してセグメンテーションレポートを作成する。

5. 教育機関: ・生徒の成績簿と出席記録を作成する。 試験結果と成績分析の生成。 ・数式を用いて成績を自動的に計算する。

6. 金融サービス: ・財務モデル、予算、予測の自動化。 包括的な報告のために財務データを統合する。 視覚分析のための グラフを作成する。

7. 人事: ・給与計算や人事評価を含む従業員データの管理。 人事指標および人口統計に関するレポートを作成する。 機密データをパスワード暗号化で保護する

8. プロジェクト管理: プロジェクトのスケジュールとリソース配分を追跡する。 ガントチャートやプロジェクト管理ツールの作成。

9. 電子商取引:

  • EコマースプラットフォームからExcelに注文詳細、顧客情報、および販売データをエクスポートします。
  • 売上トレンド、顧客行動、製品パフォーマンスの分析。

10. ヘルスケア: ・患者記録および予約スケジュールの管理。 ・医療データを分析して患者ケアを改善する。 ・ワークシート保護機能で患者データを保護する

IronXLはどの業界に最も恩恵をもたらすのか?

大量の構造化データを扱う業界が最も恩恵を受ける。

IronXLは大規模データ処理をどのように処理するのですか?

IronXLは以下の機能でパフォーマンスを最適化しています

一般的なシステム統合シナリオとは?

一般的な統合シナリオは以下のとおりです:

IronXLを実運用で使用するためのライセンスを取得するにはどうすればよいですか?

IronXLは、 Iron Software社が提供するEnterpriseライブラリです。 実行にはライセンスが必要です。 こちらからメールアドレスを使って試用版ライセンスをダウンロードできます。 送信後、ライセンスはお客様のメールアドレスに送信されます。 IronXLを使用する前に、コードの先頭にこのライセンスを記述してください。

License.LicenseKey = "your Key Here";
License.LicenseKey = "your Key Here";
License.LicenseKey = "your Key Here"
$vbLabelText   $csharpLabel

利用可能なライセンスの種類は何ですか?

IronXLは、いくつかのライセンスタイプを提供しています。 -Liteライセンス:個人開発者向け

  • Professional License: 小規模チーム向け -Enterpriseライセンス:大規模組織向け
  • SaaSライセンス:クラウドベースのアプリケーション向け
  • OEMライセンス:再配布用

ライセンスキーはどのように適用すればよいですか?

ライセンスキーは複数の方法で適用できます。

// Method 1: In code
IronXL.License.LicenseKey = "YOUR-LICENSE-KEY";

// Method 2: Using app.config or web.config
// Add to configuration file:
// <appSettings>
//   <add key="IronXL.LicenseKey" value="YOUR-LICENSE-KEY"/>
// </appSettings>

// Method 3: Using environment variable
Environment.SetEnvironmentVariable("IRONXL_LICENSE_KEY", "YOUR-LICENSE-KEY");
// Method 1: In code
IronXL.License.LicenseKey = "YOUR-LICENSE-KEY";

// Method 2: Using app.config or web.config
// Add to configuration file:
// <appSettings>
//   <add key="IronXL.LicenseKey" value="YOUR-LICENSE-KEY"/>
// </appSettings>

// Method 3: Using environment variable
Environment.SetEnvironmentVariable("IRONXL_LICENSE_KEY", "YOUR-LICENSE-KEY");
' Method 1: In code
IronXL.License.LicenseKey = "YOUR-LICENSE-KEY"

' Method 2: Using app.config or web.config
' Add to configuration file:
' <appSettings>
'   <add key="IronXL.LicenseKey" value="YOUR-LICENSE-KEY"/>
' </appSettings>

' Method 3: Using environment variable
Environment.SetEnvironmentVariable("IRONXL_LICENSE_KEY", "YOUR-LICENSE-KEY")
$vbLabelText   $csharpLabel

Webアプリケーションの場合、 Web.configファイルでライセンスを設定することもできます。

裁判期間が終了するとどうなりますか?

試用期間が終了すると: 生成されたファイルに透かしが入ります

  • 一部の機能が制限される場合があります
  • 本番環境へのデプロイは許可されていません

IronXLを引き続き使用するには、商用ライセンスを購入してください。 チームは既存顧客向けにライセンスの延長およびアップグレードを提供しています。

C#でのExcelファイル操作について学んだことは何ですか?

IronXLは、Excelファイルの作成、読み取り、編集を行うための強力な.NETライブラリであり、Excelドキュメントの操作を簡素化する直感的なAPIを提供します。 XLS、XLSX、CSVなど複数のフォーマットに対応しているため、様々な用途で幅広く利用できます。 IronXLは、セル値、数式、フォーマットの容易な操作を可能にし、パフォーマンスに最適化され、大規模なファイルと複雑な操作を効率的に処理します。 そのメモリ管理機能により、アプリケーションの応答性が向上し、クロスプラットフォーム互換性により、異なるオペレーティングシステムを使用する開発者にとって非常に価値のあるものとなっている。

ウェブアプリケーションデスクトップソフトウェアクラウドサービスなど、どのようなものを開発する場合でも、 IronXLはC#でExcelファイルを効率的に操作するために必要なツールを提供します。 より高度な機能については、完全なドキュメントを参照し、豊富なコード例をご覧ください。

主なポイント: Microsoft Officeのインストールは不要です。

IronXLの継続的な機能強化に関する変更履歴マイルストーンを確認することで、最新の機能や改善点を常に把握できます。

よくある質問

Microsoft Excel がインストールされていない場合に、C# で Excel ファイルを操作するにはどうすればよいですか?

Iron ソフトウェアから提供される C# ライブラリ「IronXL」を使用して、Microsoft Excel を必要とせずに Excel ドキュメントを読み書きおよび操作できます。XLS、XLSX、CSV などのさまざまな形式をサポートしており、Web サービス、デスクトップ、コンソールなどのアプリケーションで使用できます。

C# で Excel を操作するための Visual Studio プロジェクトのセットアップにはどのような手順が含まれますか?

C# で Excel を操作するための Visual Studio プロジェクトをセットアップするには、NuGet パッケージ マネージャーを介して IronXL をインストールします。ライブラリをプロジェクトに追加するには、パッケージ マネージャー コンソールで次のコマンドを使用します: dotnet add package IronXL.Excel --version 2024.8.5

C# で Excel ファイルに計算を実行できますか?

はい、IronXL を使用すると、Excel ファイルで計算を実行できます。このライブラリは Excel の数式をサポートしており、C# アプリケーション内で計算を自動化できます。

C# を使用して Excel ファイルを HTML に変換するにはどうすればよいですか?

IronXL は、Excel ファイルを HTML に変換するための ExportToHtml メソッドを提供します。このメソッドは、HTML 出力が要件を満たすようにカスタマイズ オプションを提供します。

C# での Excel ファイル操作に IronXL を使用する利点は何ですか?

IronXL は使いやすさ、直感的な API、大きな Excel ファイルを扱うための最適化されたパフォーマンス、およびさまざまなアプリケーションに対する汎用性を提供します。また、そのクロスプラットフォーム互換性と包括的なドキュメントにより、利便性が向上します。

IronXL を使用して Excel のセルに高度なスタイルを適用できますか?

はい、IronXL を使用すると、フォント、サイズ、色、境界、配置などをカスタマイズすることで、Excel のセルに高度なスタイルを適用できます。

IronXL はクロスプラットフォームの Excel ファイル操作に適していますか?

はい、IronXL はクロスプラットフォーム用に設計されており、Windows、macOS、Linux、Docker、Azure、AWS などの環境に対応しているため、多様な展開シナリオに最適です。

C# で IronXL を使用して Excel ファイルからセルの値を読み取るにはどうすればよいですか?

IronXL を使用すると、WorkBook.Load を使用してファイルを読み込み、ワークシートを選択し、アドレスを使用して特定のセル値または範囲にアクセスすることで、Excel ファイルからセルの値を読み取ることができます。

C# で Excel ファイルを処理するための IronXL の強力な点は何ですか?

IronXL は、複数の形式 (XLS、XLSX、CSV) のサポート、数式とスタイリング機能、セキュリティのための暗号化、および異なるオペレーティング システム全体で大規模なファイルを効率的に処理できる能力により、強力です。

Curtis Chau
テクニカルライター

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

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

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね