基于.NET的Excel开发:单元格区域的操作(读取、赋值、边框和格式)

时间:2022-11-14 03:59:35
  • 引用
using Excel = Microsoft.Office.Interop.Excel;
  • 定义
 Excel.ApplicationClass app;
Excel.Workbooks books;
Excel.Workbook book;
Excel.Sheets sheets;
Excel.Worksheet sheet;
Excel.Range m_objRange;
object missing = System.Reflection.Missing.Value;
  • 读取有效单元格区域
 foreach (Excel.Worksheet sheet in book.Sheets)
{
for (int i = ; i <= sheet.UsedRange.Cells.Rows.Count; i++)
{
for (int j = ; j <= sheet.UsedRange.Cells.Columns.Count; j++)
{
Excel.Range m_objRange = (Excel.Range)sheet.Cells[i, j];
}
}
}
  • 单元格区域赋值
 m_objRange = sheet .get_Range("A1",missing );
m_objRange.set_Value(missing , "单元格的值");
  • 单元格区域设置Excel公式
 m_objRange = sheet .get_Range("A1", missing );
m_objRange.set_Value(missing , "=SUM(A2:A5)");
  • 字体加粗
 m_objRange.Font.Bold = true;
  • 设置数字格式
 //保留2位小数
m_objRange.NumberFormat = "0.00";
  • 设置边框
 m_objRange = sheet .get_Range("A1", "B2");
//设置边框粗细
m_objRange.Borders.Weight = ;
//设置边框样式
m_objRange.Borders.get_Item(Excel.XlBordersIndex.xlEdgeTop).LineStyle = Excel.XlLineStyle.xlDouble;
  • XlLineStyle枚举
xlContinuous :实线。 
xlDash :虚线。 
xlDashDot:点划相间线。 
xlDashDotDot:划线后跟两个点。 
xlDot :点线。 
xlDouble:双线。 
xlLineStyleNone:无线条。 
xlSlantDashDot :倾斜的划线。
 
  • XlBordersIndex枚举
xlDiagonalDown:对角线,从左上角到右下角。
xlDiagonalUp:对角线,从左上角到右下角。
xlEdgeBottom:底部边框。
xlEdgeLeft:左部边框。
xlEdgeRight:右部边框。
xlEdgeTop:顶部边框。
xlInsideHorizontal:内部水平边框。
xlInsideVertical Vertical:内部垂直边框。