You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Aspose仅自动调整仅含合并单元格的行?

解决方案

要实现仅自动调整包含合并单元格的行,你需要遍历工作表的每一行,先判断该行是否存在合并单元格,再对符合条件的行单独执行自动调整操作。具体代码如下:

AutoFitterOptions options = new AutoFitterOptions();
options.AutoFitMergedCells = true;

// 遍历工作表的所有数据行
for (int row = 0; row < _worksheet.Cells.MaxDataRow + 1; row++)
{
    bool hasMergedCells = false;
    // 获取工作表中所有合并区域
    Range[] mergedRanges = _worksheet.Cells.GetMergedCells();
    
    if (mergedRanges != null)
    {
        // 检查当前行是否包含在任意合并区域内
        foreach (Range range in mergedRanges)
        {
            if (row >= range.FirstRow && row <= range.LastRow)
            {
                hasMergedCells = true;
                break;
            }
        }
    }
    
    // 仅对包含合并单元格的行执行自动调整
    if (hasMergedCells)
    {
        _worksheet.AutoFitRow(row, options);
    }
}

代码说明

  • 遍历范围覆盖到工作表的MaxDataRow,确保包含所有已写入数据的行(包括后续新增的行,只要执行这段代码时数据已完成写入)
  • 通过GetMergedCells()获取所有合并区域,逐个判断当前行是否属于某合并区域
  • 仅对包含合并单元格的行调用AutoFitRow,并传入支持合并单元格自动调整的选项,其余行保持原有行高不变

内容的提问来源于stack exchange,提问作者Tom Kurian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 17:31:01