IronXL ハウツー セルを結合 C#でIronXLを使ってセルをマージ/アンマージする方法 カーティス・チャウ 更新日:2026年1月10日 IronXL をダウンロード NuGet ダウンロード DLL ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る This article was translated from English: Does it need improvement? Translated View the article in English IronXLは、C#の開発者がMerge("B3:D3")やUnmerge()のようなシンプルなメソッドを使用して、複数のExcelセルを1つの大きなセルにマージしたり、個々のセルにマージ解除したりすることを可能にし、Excelのインターオプなしで書式設定やデータ表示の柔軟性を提供します。 クイックスタート: 単一の呼び出しでセル範囲を結合 わずか数行でワークブックを読み込み、IronXLのMergeメソッドを使って指定したセル範囲をマージし、ファイルを保存することができます。これは開発者がExcel Interopなしで簡単にセルのマージを開始できるように設計されています。 今すぐ NuGet で PDF を作成してみましょう: NuGet パッケージ マネージャーを使用して IronXL をインストールします PM > Install-Package IronXL.Excel このコード スニペットをコピーして実行します。 var ws = WorkBook.Load("file.xlsx").DefaultWorkSheet; ws.Merge("B3:D3"); ws.SaveAs("merged.xlsx"); 実際の環境でテストするためにデプロイする 今すぐ無料トライアルでプロジェクトに IronXL を使い始めましょう 30日間無料トライアル ### 最小限のワークフロー(5ステップ) セルを結合および結合解除するための C# ライブラリをダウンロード 既存のスプレッドシートを読み込む、または新しいスプレッドシートを作成する Mergeメソッドを使用して、目的の範囲をマージします。 Unmerge メソッドに範囲アドレスまたはインデックスを指定してアンマージする。 変更されたスプレッドシートをエクスポートする C#を使用して Excel でセルを結合するにはどうすればよいですか? Mergeメソッドは、セルの範囲をマージするために使用することができます。 このプロセスは既存の値やデータを消去せずにセルを結合しますが、結合された領域内の最初のセルの値のみが表示されます。 しかし、結合されたセルの値はIronXLでアクセス可能です。 この機能は、フォーマットされたヘッダーでスプレッドシートを作成するときや、Excelテンプレートで作業するときに特に役立ちます。 フィルタ範囲内でセルをマージすると、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 マージするとセルの値はどうなりますか? なぜセルの結合が Excel のコンフリクトを引き起こすことがあるのですか セルの結合は、隣接する2つ以上のセルを1つの大きなセルにまとめるプロセスを指します。 セルの結合解除とは、結合されたセルを元の個々のセルに戻す逆のプロセスです。 この機能は柔軟性、一貫した配置、より良いデータ分析を可能にします。 セルの書式設定やセルのスタイル設定を使用する場合、マージされたセルが、並べ替えやフィルタリングのようなExcelの他の機能に干渉することがあります。 Excelのコンフリクトは通常、マージされたセルがフィルタ範囲と重なる場合や、マージされたセルを含むデータを並べ替えようとする場合に発生します。 Excelでは、結合されたセルは1つの単位として扱われるため、範囲内の個々のセルに対する通常の操作が妨げられる可能性があり、このような問題が発生します。 これらの制限を理解することは、ワークシートを管理するときや、スプレッドシートの構造を計画するときに役立ちます。 ビジネス アプリケーションではどのような場合にセル マージを使用する必要がありますか? セルの結合は、複数の列にまたがるヘッダーの作成、より見やすく表示するためのレポートの書式設定、より大きな入力領域を持つフォームの作成に特に役立ちます。 請求書テンプレート、ダッシュボード、データ入力フォームでよく使用されます。 ビジネスアプリケーションからExcelにエクスポートする場合、セルの結合はプロフェッショナルなドキュメントを作成するのに役立ちます。 一般的なビジネスシナリオは以下のとおりです: レポートヘッダー:データの幅にまたがるタイトルの作成 ダッシュボードのデザイン:要約統計やKPIのためのセルの組み合わせ フォーム作成:より大きなテキスト入力領域のためにセルをマージする 請求書テンプレート:会社情報のセルをマージしてプロフェッショナルなレイアウトを作成する ワークシート内のマージされたすべての領域を取得するにはどうすればよいですか? マージされた領域を取得することは、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); } Imports IronXL Imports System.Collections.Generic Imports System Dim workBook As WorkBook = WorkBook.Create() Dim workSheet As WorkSheet = workBook.DefaultWorkSheet ' Apply merge workSheet.Merge("B4:C4") workSheet.Merge("A1:A4") workSheet.Merge("A6:D9") ' Retrieve merged regions Dim retrieveMergedRegions As List(Of IronXL.Range) = workSheet.GetMergedRegions() For Each mergedRegion As IronXL.Range In retrieveMergedRegions Console.WriteLine(mergedRegion.RangeAddressAsString) Next $vbLabelText $csharpLabel なぜプログラムでマージ領域を取得する必要があるのですか? マージされた領域を取得することは、スプレッドシートの構造を分析したり、データの整合性を検証したり、他のワークシートで書式を複製したりする必要がある場合に役立ちます。 テンプレートを処理したり、スプレッドシートの自動修正を行うアプリケーションには不可欠です。 この能力は、プログラムでExcelファイルを編集するときや、既存の書式を保持する必要があるツールを構築するときに重要になります。 マージされたリージョンを取得するためのユースケースは以下の通りです: テンプレート処理: データを入力する前にテンプレート内のマージされた領域を識別する フォーマットの複製:あるワークシートから別のワークシートへのマージパターンのコピー データ検証:セルがマージされたファイルを処理するときにデータの整合性を確保する レポート生成:動的なレポート作成のための既存のマージパターンを理解する マージされたリージョンはどのような順序で返されますか? マージされたリージョンは、作成された日付順に返されます。 この順序は、インデックスベースのマージ解除操作を使用する場合に重要です。 この順序を理解することは、元に戻す/やり直し機能のような機能を実装するときや、処理のために特定の範囲を選択する必要があるときに役立ちます。 IronXLでExcelのセルを結合解除するには? 結合された領域の解除は、2つの異なるアプローチで達成できます。 最初の最も単純な方法は、B3:B6のようなセル・アドレスを指定して結合を解除することです。 また、マージされた領域のインデックスに基づいてセルをアンマージすることもできます。 結合された領域は時系列順にリストされています。 これを行うには、まずマージされたリージョンを取得し、Unmergeメソッドに希望のインデックスを渡します。 この柔軟性により、Excelファイルをプログラムで処理する際のさまざまなシナリオに対応できます。 [{i:(セル アドレスは結合領域と正確に一致する必要があります。 マージされた領域の一部を解除することはできません。 :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 セルの結合を解除するときによくある問題は何ですか? どのマージ解除方法を使用すればよいですか? 正確なマージ領域の座標がわかっている場合は、アドレスベースのアンマージを使用してください。 すべてのマージされたリージョンをプログラムで繰り返し処理するときや、正確なアドレスが異なる可能性があるときは、インデックスベースのアンマージを使用してください。 以下は、決定に役立つ比較です: アドレスベースのアンマージ:。 既知のマージパターンを持つ静的テンプレートに最適 標準化されたレポートの処理に最適 特定地域を扱う場合のコードの簡素化 インデックスベースのアンマージ:。 さまざまなマージパターンを持つダイナミックなスプレッドシートに最適です。 ユーザーがアップロードしたファイルを処理する際に便利 複数のマージされたリージョンをバッチ処理するのに適しています。 セル操作を含むより複雑なシナリオについては、IronXL API Referenceを参照して、マージされたセルを効率的に処理するための追加のメソッドとプロパティを発見してください。 よくある質問 C#を使用してExcelでセルを結合するにはどうすればよいですか? IronXLのMergeメソッドを使えば、C#を使ってExcelのセルをマージすることができます。ワークブックをロードし、セル範囲を指定してMergeメソッドを呼び出し(例:ws.Merge("B3:D3"))、ファイルを保存するだけです。これは、Excel Interop を必要とせずに、複数のセルを 1 つの大きなセルに結合します。 セルを結合すると、セルの値はどうなりますか? IronXLを使用してセルを結合する場合、既存の値やデータを消去することなくセルを結合します。マージされた領域内の最初のセルの値のみがマージされたセルに表示されますが、IronXLではプログラムによって元のすべての値にアクセスすることができます。 セルの結合がExcelのコンフリクトを引き起こすことがあるのはなぜですか? エクセルのコンフリクトは通常、マージされたセルがフィルタ範囲と重なる場合や、マージされたセルを含むデータをソートしようとする場合に発生します。IronXL.Excel はこのような問題を特定するのに役立ちます。フィルタ範囲内でセルをマージすると、スプレッドシートを正しく表示するためにExcelの修復が必要になることがあります。 以前にマージしたセルを元に戻すことはできますか? はい、IronXLはマージされたセルを元の個々のセルに分割するUnmergeメソッドを提供しています。範囲アドレスかインデックスのどちらかを指定することで結合を解除できますので、データ分析や書式の調整に柔軟に対応できます。 プログラムでセルを結合するには、Microsoft Excelがインストールされている必要がありますか? IronXLはMicrosoft ExcelやExcel Interopをインストールすることなく、C#でExcelセルのマージとアンマージを可能にします。このライブラリは独立して動作するため、サーバー環境や自動化されたプロセスに最適です。 セルのマージは、フォーマットされたヘッダーを作成するのに便利ですか? IronXLのマージ機能は、フォーマットされたヘッダーを持つスプレッドシートを作成するときや、Excelテンプレートを使用するときに特に便利です。タイトルやセクションヘッダーのセルを組み合わせることで、Professionalなレイアウトを作成できます。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 準備はできましたか? Nuget ダウンロード 1,846,091 | バージョン: 2026.2 リリース NuGet 無料版 総ダウンロード数: 1,846,091 ライセンスを見る