Excel表格中,由于各種數(shù)據(jù)的復(fù)雜性,可能存在單元格中的數(shù)據(jù)字號(hào)大小、數(shù)據(jù)內(nèi)容長(zhǎng)度不一而出現(xiàn),列寬過(guò)寬、過(guò)窄或者行高過(guò)大、過(guò)小的問(wèn)題。常見(jiàn)的解決方法是調(diào)整行高、列寬。在Microsoft Excel中,在單元格格式設(shè)置中可手動(dòng)設(shè)置自適應(yīng)行高或自適應(yīng)列寬,但通過(guò)代碼,我們可以通過(guò)方法AutoFitColumns()或者AutoFitRows()來(lái)設(shè)置指定數(shù)據(jù)范圍或整個(gè)工作表的自適應(yīng)行高、列寬。這里設(shè)置自適應(yīng)分以下2種情況來(lái)進(jìn)行:
創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、博州網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為博州等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
1. 固定數(shù)據(jù),設(shè)置行高、列寬自適應(yīng)數(shù)據(jù)
2. 固定行高、列寬,設(shè)置數(shù)據(jù)自適應(yīng)行高、列寬(即縮小單元格數(shù)據(jù)字體大小適應(yīng)單元格)
使用工具:Free Spire.XLS for .NET(免費(fèi)版)
注:注意在下載安裝后,添加引用Spire.Xls.dll文件,如下圖:
【示例1】固定數(shù)據(jù),設(shè)置行高、列寬自適應(yīng)數(shù)據(jù)
Step 1: 加載工作簿
//創(chuàng)建一個(gè)Workbook類的對(duì)象,并加載測(cè)試文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("sample.xlsx");
Step 2: 獲取指定工作表
Worksheet worksheet = workbook.Worksheets[0];
Step 3:設(shè)置自適應(yīng)
//設(shè)置列寬、行高為自適應(yīng)(應(yīng)用于指定數(shù)據(jù)范圍) worksheet.AllocatedRange["A1:F15"].AutoFitColumns(); worksheet.AllocatedRange["A1:F15"].AutoFitRows(); ////設(shè)置列寬、行高為自適應(yīng)(應(yīng)用于整個(gè)工作表) //worksheet.AllocatedRange.AutoFitColumns(); //worksheet.AllocatedRange.AutoFitRows();
Step 4:保存文檔
workbook.SaveToFile("result.xlsx", FileFormat.Version2010);
設(shè)置效果:
全部代碼:
using Spire.Xls; namespace AutoFit_XLS { class Program { static void Main(string[] args) { //創(chuàng)建一個(gè)Workbook類的對(duì)象,并加載測(cè)試文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("sample.xlsx"); //獲取工作表 Worksheet worksheet = workbook.Worksheets[0]; //設(shè)置列寬、行高為自適應(yīng)(應(yīng)用于指定數(shù)據(jù)范圍) worksheet.AllocatedRange["A1:F15"].AutoFitColumns(); worksheet.AllocatedRange["A1:F15"].AutoFitRows(); ////設(shè)置列寬、行高為自適應(yīng)(應(yīng)用于整個(gè)工作表) //worksheet.AllocatedRange.AutoFitColumns(); //worksheet.AllocatedRange.AutoFitRows(); //保存文檔 workbook.SaveToFile("result.xlsx", FileFormat.Version2010); System.Diagnostics.Process.Start("result.xlsx"); } } }
【示例2】固定行高、列寬,設(shè)置數(shù)據(jù)自適應(yīng)行高、列寬
Step 1:加載工作簿
//實(shí)例化Workbook類的對(duì)象,并加載測(cè)試文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("test.xlsx");
Step 2:獲取指定工作表
Worksheet sheet = workbook.Worksheets[0];
Step 3: 獲取指定數(shù)據(jù)范圍
CellRange cell = sheet.Range["A1:C1"];
Step 4: 縮小單元格字體以適應(yīng)列寬
CellStyle style = cell.Style; style.ShrinkToFit = true;
Step 5: 保存文檔
workbook.SaveToFile("result.xlsx", ExcelVersion.Version2013);
設(shè)置結(jié)果:
全部代碼:
using Spire.Xls; namespace ShrinkTextToFitCell_XLS { class Program { static void Main(string[] args) { //實(shí)例化Workbook類的對(duì)象,并加載測(cè)試文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("test.xlsx"); //獲取第一個(gè)工作表 Worksheet sheet = workbook.Worksheets[0]; //獲取指定數(shù)據(jù)范圍 CellRange cell = sheet.Range["A1:C1"]; //設(shè)置單元格樣式(數(shù)據(jù)縮小以適應(yīng)單元格) CellStyle style = cell.Style; style.ShrinkToFit = true; //保存文檔 workbook.SaveToFile("result.xlsx", ExcelVersion.Version2013); System.Diagnostics.Process.Start("result.xlsx"); } } }
以上所述是小編給大家介紹的C#設(shè)置Excel數(shù)據(jù)自適應(yīng)行高、列寬的2種情況詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)創(chuàng)新互聯(lián)網(wǎng)站的支持!