C# Excelセルの結合と結合解除

<h1><strong>はじめに</strong></h1>
<p>エクセルには、セルの結合と結合解除という機能があります。この機能を使うことで、シートをレイアウトする時に、表内の複数のセルをくっつけて1つにすることができます。さあ、今日は<strong><a href="https://www.e-iceblue.com/Introduce/excel-for-net-introduce.html#.YW9_P_l1NmI">Spire.XLS for .NET</a></strong>といライブラリを利用してExcelでセルの結合と結合解除について紹介したいので、お役に少しでも立てたのであれば嬉しいです。</p>
<h1><strong>Spire.XLS for .NET</strong><strong>とは？</strong></h1>
<p><strong><a href="https://www.e-iceblue.com/Introduce/excel-for-net-introduce.html#.YW9_P_l1NmI">Spire.XLS for .NET</a></strong>は、開発者が<strong>C#</strong>や<strong>VB.NET</strong>プラットホームでExcelの文書ファイルを迅速かつ高品質で作成・編集・変換・印刷するために設計された専門的な Excelライブラリです。</p>
<p>中には、商用版と無料版の<a href="https://www.e-iceblue.com/Introduce/free-xls-component.html#.YW9_bPl1NmI"><strong>Free Spire.XLS for .NE</strong>T</a>があります<strong><a href="https://www.e-iceblue.com/Introduce/excel-for-net-introduce.html#.YW9_P_l1NmI">Spire.XLS for .NET</a></strong>は商用版ではありますが、基本的な機能を搭載しているので、無料試用で日常の仕事にはもう結構だと思います。</p>
<h1><strong>下準備</strong></h1>
<p>1.E-iceblueの公式サイトから<strong><a href="https://www.e-iceblue.com/Download/downoad-excel-for-net-now.html">Spire.XLS</a></strong>をダウンロードしてください。</p>
<p>2.Visual Studioを起動して新規プロジェクトを作成してから、インストールされたファイルで相応しい<strong>Spire.XLS.dll</strong>を参照に追加してください。</p>
<h1><strong>メソッド説明</strong></h1>
<p>下記の表には、この機能を実行するには必要なメソッドやプロパティが含まれています。</p>
<table>
<tbody>
<tr>
<td width="277">
<p><strong>　　　　 アイテム</strong></p>
</td>
<td width="277">
<p><strong>　　　　　説明</strong></p>
</td>
</tr>
<tr>
<td width="277">
<p><strong>Workbook.LoadFromFile</strong></p>
</td>
<td width="277">
<p><strong>Loads the file.</strong></p>
</td>
</tr>
<tr>
<td width="277">
<p><strong>Workbook.SaveToFile</strong></p>
</td>
<td width="277">
<p><strong>Saves the file.</strong></p>
</td>
</tr>
<tr>
<td width="277">
<p><strong>XlsRange.Merge Method</strong></p>
</td>
<td width="277">
<p><strong>Creates a merged cell from the specified Range object.</strong></p>
</td>
</tr>
<tr>
<td width="277">
<p><strong>XlsRange.UnMerge Method</strong></p>
</td>
<td width="277">
<p><strong>Separates a merged area into individual cells.</strong></p>
</td>
</tr>
<tr>
<td width="277">
<p><strong>Workbook.Worksheets Property</strong></p>
</td>
<td width="277">
<p><strong>Returns a Sheets collection that represents all the worksheets in the specified workbook</strong></p>
</td>
</tr>
<tr>
<td width="277">
<p><strong>Worksheet.Range Property</strong></p>
</td>
<td width="277">
<p><strong>Returns a Range object that represents the used range on the specified worksheet.</strong></p>
</td>
</tr>
<tr>
<td width="277">
<p><strong>Worksheet.Rows Property</strong></p>
</td>
<td width="277">
<p><strong>Returns a Range object that represents the used Row on the specified worksheet.</strong></p>
</td>
</tr>
</tbody>
</table>
<h1><strong>セルの結合</strong></h1>
<p>下記はセルを結合するステップとコードになります。</p>
<ol>
<li><strong><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/T_Spire_Xls_Workbook.htm">Workbook</a></strong>オブジェクトを作成します。</li>
<li><strong><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/Overload_Spire_Xls_Workbook_LoadFromFile.htm">Workbook.LoadFromFile</a></strong>メソッドでファイルをロードします。</li>
<li><strong><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/M_Spire_Xls_Core_Spreadsheet_XlsRange_Merge.htm">XlsRange.Merge </a></strong>メソッドでセルを結合します。</li>
<li><strong><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/Overload_Spire_Xls_Workbook_SaveToFile.htm">Workbook.SaveToFile</a></strong>メソッドでファイルを保存します。</li>
</ol>
```C#
using Spire.Xls;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("Sample.xlsx");

            workbook.Worksheets[0].Rows[0].Merge();
            workbook.Worksheets[0].Range["F2:G7"].Merge();

            workbook.SaveToFile("Merge.xlsx");
        }
    }
}
```

<p><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/l/lendoris/20211020/20211020112927.png" alt="f:id:lendoris:20211020112927p:plain" width="554" height="115" loading="lazy" title="" class="hatena-fotolife" itemprop="image" /></p>
<h1><strong>セル結合解除</strong></h1>
<p>下記はセル結合を解除するステップとコードになります。</p>
<ol>
<li><strong><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/T_Spire_Xls_Workbook.htm">Workbook</a></strong>オブジェクトを作成します。</li>
<li><strong><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/Overload_Spire_Xls_Workbook_LoadFromFile.htm">Workbook.LoadFromFile</a></strong>メソッドでファイルをロードします。</li>
<li><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/M_Spire_Xls_Core_Spreadsheet_XlsRange_UnMerge.htm"><strong>XlsRange.UnMerge</strong> </a>メソッドで結合を解除します。</li>
<li><strong><a href="https://www.e-iceblue.com/apireference/net/Spire.XLS/html/Overload_Spire_Xls_Workbook_SaveToFile.htm">Workbook.SaveToFile</a></strong>メソッドでファイルを保存します。</li>
</ol>
```C#

using Spire.Xls;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("Merge.xlsx");

            workbook.Worksheets[0].Rows[0].UnMerge();
            workbook.Worksheets[0].Range["A3:B5"].UnMerge();
           
            workbook.SaveToFile("Unmerge.xlsx");
        }
    }
}
```


<h1><strong>最後に</strong></h1>
<p>ここまで読んでくださってありがとうございます！もし<strong><a href="https://www.e-iceblue.com/Introduce/excel-for-net-introduce.html#.YW9_P_l1NmI">Spire.XLS for .NET</a></strong>を利用している時にご不明なところがございましたら、ぜひご連絡ください</p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>