自动调整合并单元格的行高
Contents
[
Hide
]
Microsoft Excel提供了一个功能,可以根据内容自动调整单元格的高度。该功能称为自动调整行高。Microsoft Excel不会本机设置合并单元格的自动调整操作。有时,这项功能对于真正需要在合并单元格上实现自动调整行高的用户来说是至关重要的。
如何使用AutoFitMergedCellsType自动调整行高
Aspose.Cells支持通过AutoFitterOptions.AutoFitMergedCellsTypeAPI实现此功能。使用此API,可以自动调整工作表中合并的单元格的行。
- 无
- 首行
- 末行
- 每行
自动调整合并单元格的行高
请参考下面的代码,它创建一个工作簿对象并添加多个工作表。在每个工作表中使用不同的方法进行自动调整操作。屏幕截图显示了在执行示例代码后的结果。

C# 示例代码
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Instantiating an Workbook object | |
Workbook workbook = new Workbook(); | |
//Obtaining the reference of the newly added worksheet | |
Worksheet sheet1 = workbook.Worksheets[0]; | |
// Create a range A1:B2 | |
Range range = sheet1.Cells.CreateRange(0, 0, 2, 2); | |
// Merge the cells | |
range.Merge(); | |
// Insert value to the merged cell A1 | |
sheet1.Cells[0, 0].Value = "A quick brown fox jumps over the lazy dog. A quick brown fox jumps over the lazy dog....end"; | |
// Create a style object | |
Style style = sheet1.Cells[0, 0].GetStyle(); | |
// Set wrapping text on | |
style.IsTextWrapped = true; | |
// Apply the style to the cell | |
sheet1.Cells[0, 0].SetStyle(style); | |
// Create an object for AutoFitterOptions | |
AutoFitterOptions options = new AutoFitterOptions(); | |
// Only expands the height of the first row. | |
options.AutoFitMergedCellsType = AutoFitMergedCellsType.FirstLine; | |
// Autofit rows in the sheet(including the merged cells) | |
sheet1.AutoFitRows(options); | |
int index = workbook.Worksheets.Add(); | |
Worksheet sheet2 = workbook.Worksheets[index]; | |
sheet2.Name = "Sheet2"; | |
// Create a range A1:B2 | |
Range range2 = sheet2.Cells.CreateRange(0, 0, 2, 2); | |
// Merge the cells | |
range2.Merge(); | |
// Insert value to the merged cell A1 | |
sheet2.Cells[0, 0].Value = "A quick brown fox jumps over the lazy dog. A quick brown fox jumps over the lazy dog....end"; | |
// Create a style object | |
Style style2 = sheet2.Cells[0, 0].GetStyle(); | |
// Set wrapping text on | |
style2.IsTextWrapped = true; | |
// Apply the style to the cell | |
sheet2.Cells[0, 0].SetStyle(style); | |
// Create an object for AutoFitterOptions | |
AutoFitterOptions options2 = new AutoFitterOptions(); | |
// Only expands the height of the last row. | |
options2.AutoFitMergedCellsType = AutoFitMergedCellsType.LastLine; | |
// Autofit rows in the sheet(including the merged cells) | |
sheet2.AutoFitRows(options2); | |
index = workbook.Worksheets.Add(); | |
Worksheet sheet3 = workbook.Worksheets[index]; | |
sheet3.Name = "Sheet3"; | |
// Create a range A1:B2 | |
Range range3 = sheet3.Cells.CreateRange(0, 0, 2, 2); | |
// Merge the cells | |
range3.Merge(); | |
// Insert value to the merged cell A1 | |
sheet3.Cells[0, 0].Value = "A quick brown fox jumps over the lazy dog. A quick brown fox jumps over the lazy dog....end"; | |
// Create a style object | |
Style style3 = sheet3.Cells[0, 0].GetStyle(); | |
// Set wrapping text on | |
style3.IsTextWrapped = true; | |
// Apply the style to the cell | |
sheet3.Cells[0, 0].SetStyle(style); | |
// Create an object for AutoFitterOptions | |
AutoFitterOptions options3 = new AutoFitterOptions(); | |
// Only expands the height of each row. | |
options3.AutoFitMergedCellsType = AutoFitMergedCellsType.EachLine; | |
// Autofit rows in the sheet(including the merged cells) | |
sheet3.AutoFitRows(options3); | |
index = workbook.Worksheets.Add(); | |
Worksheet sheet4 = workbook.Worksheets[index]; | |
sheet4.Name = "Sheet4"; | |
// Create a range A1:B2 | |
Range range4 = sheet4.Cells.CreateRange(0, 0, 2, 2); | |
// Merge the cells | |
range4.Merge(); | |
// Insert value to the merged cell A1 | |
sheet4.Cells[0, 0].Value = "A quick brown fox jumps over the lazy dog. A quick brown fox jumps over the lazy dog....end"; | |
// Create a style object | |
Style style4 = sheet4.Cells[0, 0].GetStyle(); | |
// Set wrapping text on | |
style4.IsTextWrapped = true; | |
// Apply the style to the cell | |
sheet4.Cells[0, 0].SetStyle(style); | |
// Create an object for AutoFitterOptions | |
AutoFitterOptions options4 = new AutoFitterOptions(); | |
// Ignore merged cells. | |
options4.AutoFitMergedCellsType = AutoFitMergedCellsType.None; | |
// Autofit rows in the sheet(not including the merged cells) | |
sheet4.AutoFitRows(options4); | |
// Save the Excel file | |
workbook.Save("out.xlsx"); |