Excelでセルを結合および結合解除する方法

How to Merge and Unmerge Cells

This article was translated from English: Does it need improvement?
Translated
View the article in English

セルの結合は、隣接する2つ以上のセルを1つの大きなセルにまとめるプロセスを指します。 一方で、セルの解除は、結合されたセルを元の個別のセルに分割する逆のプロセスです。 この機能は柔軟性、一貫した配置、より良いデータ分析を可能にします。

クイックスタート: 単一の呼び出しでセル範囲を結合

数行で、ワークブックをロードし、IronXLのMergeメソッドを使用して指定されたセル範囲を結合し、ファイルを保存できます。これは、Excel Interopなしで簡単にセルを結合するために開発者向けに設計されています。

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronXL with NuGet Package Manager

    PM > Install-Package IronXL.Excel

  2. Copy and run this code snippet.

    var ws = WorkBook.Load("file.xlsx").DefaultWorkSheet; ws.Merge("B3:D3"); ws.SaveAs("merged.xlsx");
  3. Deploy to test on your live environment

    Start using IronXL in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

ミニマルワークフロー (5段階)

セルの結合および解除方法
  1. セルを結合および解除するためのC#ライブラリをダウンロード
  2. 既存のスプレッドシートをロードするか、新しいスプレッドシートを作成します
  3. 目的の範囲を結合するためにMergeメソッドを利用します
  4. 結合領域の範囲アドレスまたはインデックスをUnmergeメソッドに指定して解除を実行します
  5. 変更されたスプレッドシートをエクスポートします

セル結合の例

Mergeメソッドは、セルの範囲を結合するために利用できます。 このプロセスは既存の値やデータを消去せずにセルを結合しますが、結合された領域内の最初のセルの値のみが表示されます。 しかし、結合されたセルの値はIronXLでアクセス可能です。

ご注意フィルター範囲内でのセルの結合はExcelファイル内での競合を引き起こし、スプレッドシートを表示するためにExcel修復が必要となる場合があります。

以下のコード例は、アドレスを指定してセル範囲を結合する方法を示しています。

:path=/static-assets/excel/content-code-examples/how-to/csharp-excel-merge-cells-merge.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

var range = workSheet["B2:B5"];

// Merge cells B7 to E7
workSheet.Merge("B7:E7");

// Merge selected range
workSheet.Merge(range.RangeAddressAsString);

workBook.SaveAs("mergedCell.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

Private range = workSheet("B2:B5")

' Merge cells B7 to E7
workSheet.Merge("B7:E7")

' Merge selected range
workSheet.Merge(range.RangeAddressAsString)

workBook.SaveAs("mergedCell.xlsx")
$vbLabelText   $csharpLabel

デモンストレーション

class="content-img-align-center">
class="center-image-wrapper"> セル結合のデモンストレーション

結合領域を取得する例

結合領域を取得することは、Microsoft Excelのようなスプレッドシート視覚化ソフトウェアで表示される値を特定するのに便利な機能です。 結合された領域のリストを取得するには、GetMergedRegionsメソッドを利用できます。

:path=/static-assets/excel/content-code-examples/how-to/csharp-excel-merge-cells-retrieve-merged-regions.cs
using IronXL;
using System.Collections.Generic;
using System;

WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Apply merge
workSheet.Merge("B4:C4");
workSheet.Merge("A1:A4");
workSheet.Merge("A6:D9");

// Retrieve merged regions
List<IronXL.Range> retrieveMergedRegions = workSheet.GetMergedRegions();

foreach (IronXL.Range mergedRegion in retrieveMergedRegions)
{
    Console.WriteLine(mergedRegion.RangeAddressAsString);
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

セル解除の例

結合された領域の解除は、2つの異なるアプローチで達成できます。 最初で最も簡単な方法は、B3:B6のようにセルのアドレスを指定して解除することです。

または、結合領域のインデックスに基づいてセルを解除することもできます。 結合された領域は時系列順にリストされています。 これを行うためには、最初に結合された領域を取得し、希望するインデックスをUnmergeメソッドに渡すことができます。

ご注意セルアドレスは結合領域と正確に対応しなければなりません。 結合領域の一部を解除することはできません。

:path=/static-assets/excel/content-code-examples/how-to/csharp-excel-merge-cells-unmerge.cs
using IronXL;

WorkBook workBook = WorkBook.Load("mergedCell.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Unmerge the merged region of B7 to E7
workSheet.Unmerge("B7:E7");

workBook.SaveAs("unmergedCell.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("mergedCell.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Unmerge the merged region of B7 to E7
workSheet.Unmerge("B7:E7")

workBook.SaveAs("unmergedCell.xlsx")
$vbLabelText   $csharpLabel

デモンストレーション

class="content-img-align-center">
class="center-image-wrapper"> セル解除のデモンストレーション

よくある質問

Excel Interopを使用せずにC#でセルを結合するにはどうすればよいですか?

Excel Interopを使用せずにC#でセルを結合するには、IronXLのMergeメソッドを利用することができます。これはブックを読み込み、ワークシートを選択し、範囲を指定し、Mergeメソッドを適用してセルを組み合わせる作業を含みます。

C#アプリケーションでセルを解除するにはどうすればよいですか?

C#アプリケーションでIronXLを使用してセルを解除するには、Unmergeメソッドを使用できます。結合済み領域の範囲アドレスまたはインデックスを指定して、結合をリバースします。

Excel操作を行うためにIronXLの利用を開始するプロセスは何ですか?

Excel操作にIronXLを使用し始めるには、NuGetからライブラリをダウンロードし、スプレッドシートを読み込むか作成し、MergeUnmergeのようなメソッドを利用してプログラム的にセル操作を行います。

スプレッドシートで結合済み領域のリストを取得することはできますか?

はい、IronXLのGetMergedRegionsメソッドを使用して、スプレッドシート内の結合済み領域のリストを取得できます。これはワークシートでどのセルが結合されたかを特定するのに役立ちます。

Microsoft ExcelをインストールせずにExcelスプレッドシートを管理することはできますか?

はい、IronXLはMicrosoft Excelがシステムにインストールされていなくても、プログラム的にセルを結合したり解除したりするなど、Excelスプレッドシートの管理を可能にします。

フィルタ範囲内でセルを結合するときに考慮すべき点は何ですか?

フィルタ範囲内でセルを結合すると、Excelファイルで競合が発生する可能性があり、スプレッドシートを正しく表示するためにExcelの修復ツールを使用する必要があるかもしれません。

Mergeメソッドはセルのデータを消去しますか?

いいえ、Mergeメソッドはデータを消去しません。それはセルを結合し、最初のセルの値のみを表示しますが、他のすべてのセルの値はアクセス可能なままです。

IronXLでの結合と解除プロセスを視覚化するにはどうすればいいですか?

IronXLは結合と解除のプロセスを実行する方法を示すコード例とデモを提供しています。これらの例は、Excelファイルのプログラム的な操作方法を視覚化するのに役立ちます。

Chaknith Bin
ソフトウェアエンジニア
ChaknithはIronXLとIronBarcodeに取り組んでいます。彼はC#と.NETの深い専門知識を持ち、ソフトウェアの改善や顧客サポートに貢献しています。ユーザーとの対話から得られる洞察が、より良い製品、ドキュメント、および全体的な経験に寄与しています。
準備はいいですか?
Nuget ダウンロード 1,686,155 | バージョン: 2025.11 ただ今リリースされました