セルの結合は、2つ以上のセルを1つの大きなセルに結合することです。セルの分割は、1つのセルを2つ以上の小さなセルに分割することです。Microsoft Word で表を作成または編集する際には、データをよりよく表示するために、表のセルを結合または分割する必要があることがよくあります。この記事では、Spire.Doc for .NET を使用して、C# および VB.NET でプログラムによって Word で表のセルを結合または分割する方法を示します。 Word で表のセルを結合する Word で表のセルを分割する Spire.Doc for .NET をインストールします まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。 PM> Install-Package Spire.Doc C# と VB.NET を使用して Word で表のセルを結合する Microsoft Word では、垂直または水平に隣接する2つ以上のセルを1つの大きなセルに結合できます。Spire.Doc では、Table.ApplyHorizontalMerge() と Table.ApplyVerticalMerge() メソッドを使用してセルを結合できます。詳細な手順は次のとおりです。 Document クラスのインスタンスを初期化します。 Document.LoadFromFile() メソッドを使用して Word ドキュメントをロードします。 Document.Sections[int] プロパティを使用して、ドキュメント内の特定のセクションをインデックスで取得します。 Section.AddTable() メソッドを使用してセクションに表を追加します。 Table.ResetCells() メソッドを使用して、表の行数と列数を指定します。 Table.ApplyHorizontalMerge() メソッドを使用して、表内の特定のセルを水平方向に結合します。 Table.ApplyVerticalMerge() メソッドを使用して、表内の特定のセルを垂直方向に結合します。 表にデータを追加します。 表にスタイルを適用します。 Document.SaveToFile() メソッドを使用して結果ドキュメントを保存します。 C# VB.NET using Spire.Doc; using Spire.Doc.Documents; namespace MergeTableCells { class Program { static void Main(string[] args) { //Documentインスタンスを作成する Document document = new Document(); //Wordドキュメントをロードする document.LoadFromFile("sample.docx"); //最初のセクションを取得する Section section = document.Sections[0]; //セクションに4 x 4の表を追加する Table table = section.AddTable(); table.ResetCells(4, 4); //最初の行のセル1、2、3、4を水平に結合する table.ApplyHorizontalMerge(0, 0, 3); //最初の列のセル3と4を垂直に結合する table.ApplyVerticalMerge(0, 2, 3); //表にデータを追加する for (int row = 0; row < table.Rows.Count; row++) { for (int col = 0; col < table.Rows[row].Cells.Count; col++) { TableCell cell = table[row, col]; cell.CellFormat.VerticalAlignment = VerticalAlignment.Middle; Paragraph paragraph = cell.AddParagraph(); paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center; paragraph.Text = "テキスト"; } } //表にスタイルを適用する table.ApplyStyle(DefaultTableStyle.LightGridAccent1); //結果ドキュメントを保存する document.SaveToFile("MergeCells.docx", FileFormat.Docx2013); } } } Imports Spire.Doc Imports Spire.Doc.Documents Namespace MergeTableCells Friend Class Program Private Shared Sub Main(ByVal args As String()) 'Documentインスタンスを作成する Dim document As Document = New Document() 'Wordドキュメントをロードする document.LoadFromFile("sample.docx") '最初のセクションを取得する Dim section As Section = document.Sections(0) 'セクションに4 x 4の表を追加する Dim table As Table = section.AddTable() table.ResetCells(4, 4) '最初の行のセル1、2、3、4を水平に結合する table.ApplyHorizontalMerge(0, 0, 3) '最初の列のセル3と4を垂直に結合する table.ApplyVerticalMerge(0, 2, 3) '表にデータを追加する For row As Integer = 0 To table.Rows.Count - 1 For col As Integer = 0 To table.Rows(row).Cells.Count - 1 Dim cell As TableCell = table(row, col) cell.CellFormat.VerticalAlignment = VerticalAlignment.Middle Dim paragraph As Paragraph = cell.AddParagraph() paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center paragraph.Text = "テキスト" Next Next '表にスタイルを適用する table.ApplyStyle(DefaultTableStyle.LightGridAccent1) '結果ドキュメントを保存する document.SaveToFile("MergeCells.docx", FileFormat.Docx2013) End Sub End Class End Namespace C# と VB.NET を使用して Word で表のセルを分割する Spire.Doc for .NET が提供する TableCell.SplitCell() メソッドは、Word で表のセルを2つ以上のセルに分割することをサポートしています。詳細な手順は次のとおりです。 Document クラスのインスタンスを初期化します。 Document.LoadFromFile() メソッドを使用して Word ドキュメントをロードします。 Document.Sections[int] プロパティを使用して、ドキュメント内の特定のセクションをインデックスで取得します。 Section.Tables[int] プロパティを使用して、セクション内の特定の表をインデックスで取得します。 Table.Rows[int].Cells[int] プロパティで分割する表のセルを取得します。 TableCell.SplitCell() メソッドを使用して、セルを特定の数の列と行に分割します。 Document.SaveToFile() メソッドを使用して結果ドキュメントを保存します。 C# VB.NET using Spire.Doc; namespace SplitTableCells { class Program { static void Main(string[] args) { //Documentインスタンスを作成する Document document = new Document(); //Wordドキュメントをロードする document.LoadFromFile("MergeCells.docx"); //最初のセクションを取得する Section section = document.Sections[0]; //セクションの最初の表を取得する Table table = section.Tables[0] as Table; //4行の4番目のセルを取得する TableCell cell1 = table.Rows[3].Cells[3]; //セルを2列2行に分割する cell1.SplitCell(2, 2); //結果ドキュメントを保存する document.SaveToFile("SplitCells.docx", FileFormat.Docx2013); } } } Imports Spire.Doc Namespace SplitTableCells Friend Class Program Private Shared Sub Main(ByVal args As String()) 'Documentインスタンスを作成する Dim document As Document = New Document() 'Wordドキュメントをロードする document.LoadFromFile("MergeCells.docx") '最初のセクションを取得する Dim section As Section = document.Sections(0) 'セクションの最初の表を取得する Dim table As Table = TryCast(section.Tables(0), Table) '4行の4番目のセルを取得する Dim cell1 As TableCell = table.Rows(3).Cells(3) 'セルを2列2行に分割する cell1.SplitCell(2, 2) '結果ドキュメントを保存する document.SaveToFile("SplitCells.docx", FileFormat.Docx2013) End Sub End Class End Namespace 一時ライセンスを申請する 結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。