Excel表格中,由于各种数据的复杂性,可能存在单元格中的数据字号大小、数据内容长度不一而出现,列宽过宽、过窄或者行高过大、过小的问题。常见的解决方法是调整行高、列宽。在Microsoft Excel中,在单元格格式设置中可手动设置自适应行高或自适应列宽,但通过代码,我们可以通过方法AutoFitColumns()或者AutoFitRows()来设置指定数据范围或整个工作表的自适应行高、列宽。这里设置自适应分以下2种情况来进行:

1. 固定数据,设置行高、列宽自适应数据

2. 固定行高、列宽,设置数据自适应行高、列宽(即缩小单元格数据字体大小适应单元格)

使用工具:Free Spire.XLS for .NET(免费版)

注:注意在下载安装后,添加引用Spire.Xls.dll文件,如下图:

【示例1】固定数据,设置行高、列宽自适应数据

Step 1: 加载工作簿

//创建一个Workbook类的对象,并加载测试文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("sample.xlsx");

Step 2: 获取指定工作表

Worksheet worksheet = workbook.Worksheets[0];

Step 3:设置自适应

//设置列宽、行高为自适应(应用于指定数据范围)
worksheet.AllocatedRange["A1:F15"].AutoFitColumns();
worksheet.AllocatedRange["A1:F15"].AutoFitRows();////设置列宽、行高为自适应(应用于整个工作表)
//worksheet.AllocatedRange.AutoFitColumns();
//worksheet.AllocatedRange.AutoFitRows();

Step 4:保存文档

workbook.SaveToFile("result.xlsx", FileFormat.Version2010);

设置效果:

全部代码:

using Spire.Xls;namespace AutoFit_XLS
{class Program{static void Main(string[] args){//创建一个Workbook类的对象,并加载测试文档Workbook workbook = new Workbook();workbook.LoadFromFile("sample.xlsx");//获取工作表Worksheet worksheet = workbook.Worksheets[0];//设置列宽、行高为自适应(应用于指定数据范围)worksheet.AllocatedRange["A1:F15"].AutoFitColumns();worksheet.AllocatedRange["A1:F15"].AutoFitRows();////设置列宽、行高为自适应(应用于整个工作表)//worksheet.AllocatedRange.AutoFitColumns();//worksheet.AllocatedRange.AutoFitRows();//保存文档workbook.SaveToFile("result.xlsx", FileFormat.Version2010);System.Diagnostics.Process.Start("result.xlsx");}}
}

View Code

【示例2】固定行高、列宽,设置数据自适应行高、列宽

Step 1:加载工作簿

//实例化Workbook类的对象,并加载测试文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx");

Step 2:获取指定工作表

Worksheet sheet = workbook.Worksheets[0];

Step 3: 获取指定数据范围

CellRange cell = sheet.Range["A1:C1"];

Step 4: 缩小单元格字体以适应列宽

CellStyle style = cell.Style;
style.ShrinkToFit = true;

Step 5: 保存文档

workbook.SaveToFile("result.xlsx", ExcelVersion.Version2013);

设置结果:

全部代码:

using Spire.Xls;namespace ShrinkTextToFitCell_XLS
{class Program{static void Main(string[] args){//实例化Workbook类的对象,并加载测试文档Workbook workbook = new Workbook();workbook.LoadFromFile("test.xlsx");//获取第一个工作表Worksheet sheet = workbook.Worksheets[0];//获取指定数据范围CellRange cell = sheet.Range["A1:C1"];//设置单元格样式(数据缩小以适应单元格)CellStyle style = cell.Style;style.ShrinkToFit = true;//保存文档workbook.SaveToFile("result.xlsx", ExcelVersion.Version2013);System.Diagnostics.Process.Start("result.xlsx");}}
}

View Code

(本文完)

转载于:https://www.cnblogs.com/Yesi/p/10716963.html

C# 设置Excel数据自适应行高、列宽的2种情况相关推荐

  1. BODY background=自适应大小_C# 设置Excel数据自适应行高、列宽的2种情况

    Excel表格中,由于各种数据的复杂性,可能存在单元格中的数据字号大小.数据内容长度不一而出现列宽过宽.过窄或者行高过大.过小的问题.常见的解决方法是调整行高.列宽.在Microsoft Excel中 ...

  2. 如何以厘米为单位精确设置Excel表格的行高列宽?

    转载自品略图书馆  http://www.pinlue.com/article/2020/03/2714/4610059349259.html 各位朋友,大家好. 先普及下在excel里面行高和列宽的 ...

  3. Excel如何将行高列宽等格式设置一并全复制?

    今天要和大家分享的是,Excel如何将行高列宽等格式设置一并全复制?复制粘贴在简单不过的操作,但是往往粘贴过去的时候,尤其是行高和列宽并没有保留原来的设置,使得数据格式走样-- (方方格子插件) 1. ...

  4. Java POI的Excel操作(行高列宽比例;生成说明,标题,字段;导出Excel代码,压缩)

    摘要 本文主要讲解了POI中的表格行高列宽比例,以及根据这个不同的场景生成,如标题,说明,字段头.主要是思路给大家参考,生成表格如下(完整代码代码在最后,由于我的数据格式特殊,我把我以前的通用导出数据 ...

  5. UiPath设置Excel表格自适应行高、自适应列宽或固定行高、列宽

    话不多说,上图,添加第三方包:BalaReva.Excel.Activities, 使用AutoFit Columns 设置列宽,设置属性(若需要固定值设置对应参数即可) 自动调整列宽.自动调整行高

  6. C#NPOI Excel设置单元格边框、单元格文字居中、设置打印尺寸、设置页脚、行高列宽

    创建样式: ICellStyle style = workbook.CreateCellStyle(); 单元格边框 style.BorderBottom = BorderStyle.Thin; st ...

  7. T88 excel 行高列宽单位

    如何以厘米为单位精确设置Excel表格的行高列宽? http://www.360doc.com/content/20/0302/06/55021079_896078049.shtml

  8. EasyExcel 的行高列宽的单位,直接设置行高列宽的大小

    前言 有没有小伙伴用EasyExcel设置表的行高列宽时,会有点疑惑,这个 Integer 或者 Short 对应的是什么单位,我们应该设置多大的值,才能满足表的样式需要? 我刚开始使用EasyExc ...

  9. excel表格行宽列高怎么设置_excel的行高列宽怎么设置_excel的行高和列宽在哪设置...

    在使用excel时,行高和列宽一定程度上影响着整个表格的美观程度,下面为你分享了几个关于行高列宽的超实用的小技巧,感兴趣的小伙伴快来看看吧! 1.行高的单位像素怎么更改为厘米? 在设置表格时,要求设置 ...

最新文章

  1. 打开u盘时提示是否要将其格式化的提示
  2. TINYINT,SMALLINT,MEDIUMINT,INT,INTEGER,BIGINT;text,longtext,mediumtext,ENUM,SET等字段类型区别
  3. 关于[入行几年后,你的未来应该在哪里]的思考
  4. MySql 事务+异常处理+异常抛出
  5. MPEG-4 AVC/H.264 信息
  6. android系统性能优化(61)---如何降低Android应用程序的耗电量
  7. java中的string类型_Java中的字符串类型(String)
  8. Redis3.2.5 集群搭建以及Spring-boot测试
  9. VS.NET 控件命名规范
  10. 数组 spark_spark——rdd常用的转化和行动操作
  11. mysql硬盘复制无法启动_磁盘的移动导致MySQL数据启动失败
  12. 用递归求字符串的全组合
  13. 同一批人做的产品,一年跟十年,产品质量不会有任何变化
  14. 抖音最近流行的爱心代码(C语言版)
  15. 从魅力品质到伟大产品-卡诺模型
  16. BiliBili视频下载
  17. python对月饼数据进行可视化,看看哪家最划算
  18. 获取行政边界经纬度数据
  19. 使用C语言教你轻松学会Cantor表
  20. 51单片机设计简易计算机原理,基于AT89C51单片机简易计算器的设计(DOC).docx

热门文章

  1. 用EXCEL VBA编写一个文档管理程序
  2. Execution failed for task ':app:processDebugManifest'.
  3. BNUOJ-4716题 IQ test
  4. 如何面试 iOS 工程师
  5. Centos7和Zabbix5.0监控安装教程
  6. 完美解决高配置电脑Ps笔刷延迟问题
  7. 第二篇,仿微信的语音电话,视频聊天IM聊天APP开发源码
  8. 解决M1版本Macbook Air在连接显示器时显示帧率太高
  9. 微型计算机发展的两种形态是,【2013年计算机基础知识习题与答案(四)】- 环球网校...
  10. 人工智能行业数据防泄漏和设备加密该如何进行