0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

C#を使用してExcelで結合されたセルを取得する方法

Posted at

人々がExcelのテーブルを作るとき、いつもいくつかのセルを結合したり結合を解除したりする必要があります。セルをマージ解除したいと、1つずつ検索してキャンセルしなければならないからかなり面倒です。ゆえに、次はExcelで結合されたセルを識別する簡単な方法を紹介します。これを使って結合されたセルを識別した後また結合を解除したり、書式設定などの他の操作を実行することもできます。

より良く理解させるため、こちらはふたつの結語したエリアを含むドキュメントを例として、Spire.XLSというコンポーネントを使用して、詳しく説明します。
01.png

コードを使用する

ステップ1:Workbookオブジェクトをインスタンス化し、Excelドキュメントを読み込みます。

Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx");

ステップ2:Excelドキュメントの最初のシートを取得します。

Worksheet sheet = workbook.Worksheets[0];

ステップ3:マージされた領域を取得し、結果をCellRange配列に保存します。

CellRange[] range = sheet.MergedCells;

ステップ4:配列をトラバースして、マージされた領域のセルをマージ解除します。

foreach (CellRange cell in range)
{
    cell.UnMerge();
}

ステップ5:ドキュメントを保存します。

workbook.SaveToFile("result.xlsx");

操作した画像は以下のように:
02.png

完全なるコード一覧:

using Spire.Xls;

namespace Detect_Merged_Cells
{
    class Program
    {
        static void Main(string[] args)
        {
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("test.xlsx");
            Worksheet sheet = workbook.Worksheets[0];
            CellRange[] range = sheet.MergedCells;
            foreach (CellRange cell in range)
            {
                cell.UnMerge();
            }
            workbook.SaveToFile("result.xlsx");
        }
    }
}

今回のExcelで結合されたセルを取得する方法は以上でした、最後まで読んでいただきありがとうございました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?