在本文中,您將了解如何在 C# 中合併或取消合併工作表中的 Excel 單元格。通常,合併小區是指一個或多個小區連接在一起形成一個大小區。但是,相鄰的單元格可以垂直或水平合併。而將大單元格轉換為多個單元格在 Excel 工作表中稱為取消合併或拆分單元格。讓我們探討以下用例:
- 使用 C# 合併工作表中的 Excel 單元格
- 使用 C# 取消合併工作表中的 Excel 單元格
- 使用 C# 合併工作表中的一系列 Excel 單元格
- 使用 C# 取消合併工作表中的一系列 Excel 單元格
- 使用 C# 合併工作表中命名範圍的 Excel 單元格
使用 C# 合併工作表中的 Excel 單元格
您可以使用 C# 使用 Aspose.Cells for .NET API 輕鬆合併 Excel 工作表中的單元格。在此示例中,我們將從頭開始創建一個新的 Excel 工作表,然後按照以下步驟合併幾個單元格:
下面的代碼片段顯示瞭如何使用 C# 合併 Excel 工作表中的單元格:
// 創建工作簿。
Workbook wbk = new Workbook();
// 創建一個工作表並獲取第一張工作表。
Worksheet worksheet = wbk.Worksheets[0];
// 創建一個 Cells 對像以獲取所有單元格。
Cells cells = worksheet.Cells;
// 將一些 Cell (C6:E7) 合併為一個 C6 Cell。
cells.Merge(5, 2, 2, 3);
// 將數據輸入 C6 單元格。
worksheet.Cells[5, 2].PutValue("This is my value");
// 創建一個 Style 對象來獲取 C6 Cell 的 Style。
Style style = worksheet.Cells[5, 2].GetStyle();
// 創建字體對象
Font font = style.Font;
// 設置名稱。
font.Name = "Times New Roman";
// 設置字體大小。
font.Size = 18;
// 設置字體顏色
font.Color = System.Drawing.Color.Blue;
// 加粗文本
font.IsBold = true;
// 斜體
font.IsItalic = true;
// 將 C6 Cell 的背景顏色設置為紅色
style.ForegroundColor = System.Drawing.Color.Red;
style.Pattern = BackgroundType.Solid;
// 將樣式應用於 C6 單元格。
cells[5, 2].SetStyle(style);
// 保存工作簿。
wbk.Save(dataDir + "MergeCells.xlsx");
從此代碼片段生成的輸出文件將包含合併的單元格,如下面的屏幕截圖所示:
使用 C# 取消合併工作表中的 Excel 單元格
我們已經學習瞭如何合併 Excel 文件中的單元格。讓我們把這個過程更進一步。在這裡,我們將考慮按照以下步驟取消合併 Excel 工作表中的單元格:
下面的代碼片段基於這些步驟,展示瞭如何使用 C# 取消合併 Excel 文件中的單元格:
// 打開 excel 文件。
Workbook wbk = new Workbook(dataDir + "MergeCells.xlsx");
// 創建一個工作表並獲取第一張工作表。
Worksheet worksheet = wbk.Worksheets[0];
// 創建一個 Cells 對像以獲取所有單元格。
Cells cells = worksheet.Cells;
// 取消合併單元格。
cells.UnMerge(5, 2, 2, 3);
// 保存文件。
wbk.Save(dataDir + "UnmergeCells.xlsx");
下圖顯示了在您的環境中運行上述代碼時未合併的單元格的外觀:
使用 C# 合併工作表中的一系列 Excel 單元格
有時在不同的單元格範圍下指定了幾個單元格。您可能想要合併 Excel 工作表中特定範圍的單元格。在這種情況下,請按照下面列出的步驟操作:
下面的代碼片段顯示瞭如何使用 C# 將單元格範圍合併到 Excel 文件中的一個更大的單元格中:
// 創建工作簿
Workbook workbook = new Workbook();
// 訪問第一個工作表
Worksheet worksheet = workbook.Worksheets[0];
// 將數據輸入 C6 單元格。
worksheet.Cells[0, 0].PutValue("Merge Range");
// 創建範圍
Range range = worksheet.Cells.CreateRange("A1:D4");
// 將範圍合併到一個單元格中
range.Merge();
// 保存工作簿
workbook.Save(dataDir + "Merge_Range.xlsx");
使用 C# 取消合併工作表中的一系列 Excel 單元格
在前面的示例中,我們探討了在 Excel 中合併一系列單元格。讓我們按照以下步驟繼續取消合併的單元格:
下面的代碼片段遵循這些步驟並展示瞭如何使用 C# 取消合併 Excel 工作表中的一系列單元格:
// 創建工作簿
Workbook workbook = new Workbook(dataDir + "Merge_Range.xlsx");
// 訪問第一個工作表
Worksheet worksheet = workbook.Worksheets[0];
// 創建範圍
Range range = worksheet.Cells.CreateRange("A1:D4");
// 取消合併範圍
range.UnMerge();
// 保存工作簿
workbook.Save(dataDir + "UnmergeRange.xlsx");
使用 C# 合併工作表中命名範圍的 Excel 單元格
有時 Excel 文件包含多個命名範圍,因為它們很容易識別和相應地操作。因此,您還可以通過指定其名稱來合併任何命名範圍。結果,該命名範圍內的所有單元格都將合併到一個更大的單元格中。您需要按照以下步驟操作:
下面的代碼片段解釋瞭如何在 C# 中合併命名範圍內的單元格:
// 加載工作簿
Workbook workbook = new Workbook(dataDir + "Merge_Range.xlsx");
// 訪問第一個工作表
Worksheet worksheet = workbook.Worksheets[0];
// 指定範圍
Range range = worksheet.Cells.CreateRange("A1:D4");
range.Name = "Named_Range";
// 獲取範圍。
Range range1 = workbook.Worksheets.GetRangeByName("Named_Range");
// 定義樣式對象。
Style style = workbook.CreateStyle();
// 設置對齊方式。
style.HorizontalAlignment = TextAlignmentType.Center;
// 創建一個 StyleFlag 對象。
StyleFlag flag = new StyleFlag();
// 將相對樣式屬性設置為 ON。
flag.HorizontalAlignment = true;
// 將樣式應用於範圍。
range1.ApplyStyle(style, flag);
// 輸入數據到範圍。
range1[0, 0].PutValue("Aspose");
// 合併範圍
range.Merge();
// 保存工作簿
workbook.Save(dataDir + "Merge_NamedRange.xlsx");
以上代碼片段的輸出將與下圖相同:
結論
合併或取消合併 Excel 工作簿和工作表中的單元格是一項重要且有用的功能。我們在本文中編譯了不同的可能用例以及所有步驟和圖像。現在您可以輕鬆地按照這些步驟合併或取消合併 Excel 文件中的單元格、範圍或命名範圍。如有任何疑問或疑慮,請通過免費支持論壇與我們聯繫。