代码改变世界

Excel设置详细

2010-07-12 21:15  观海看云  阅读(231)  评论(0编辑  收藏  举报

using System;  
using System.Collections.Generic;  
using System.Text;  
using System.Reflection;  
using System.Runtime.InteropServices;  
using Microsoft.Office.Interop.Excel;  
using ExcelApplication = Microsoft.Office.Interop.Excel.ApplicationClass;  
 
namespace ExcalDemo  
{  
    public class ExcelFiles  
    {  
        public void CreateExcelFiles()  
        {  
            //创建一个 Excel 实例  
            ExcelApplication excel = new ExcelApplication();  
            try 
            {  
                // 注释掉的语句是:从磁盘指定位置打开一个 Excel 文件  
                //excel.Workbooks.Open("demo.xls", Missing.Value, Missing.Value,   
        //Missing.Value,Missing.Value, Missing.Value, Missing.Value,   
        //Missing.Value, Missing.Value, Missing.Value, Missing.Value,   
        //Missing.Value, Missing.Value, Missing.Value, Missing.Value);  
                  
                excel.Visible = false;// 不显示 Excel 文件,如果为 true 则显示 Excel 文件  
                excel.Workbooks.Add(Missing.Value);// 添加工作簿  
                Worksheet sheet = (Worksheet)excel.ActiveSheet;// 获取当前工作表  
 
                Range range = null;// 创建一个空的单元格对象  
                  
                range = sheet.get_Range("A1", Missing.Value);// 获取单个单元格  
                range.RowHeight = 20;           // 设置行高  
                range.ColumnWidth = 20;         // 设置列宽  
                range.Borders.LineStyle = 1;    // 设置单元格边框  
                range.Font.Bold = true;         // 加粗字体  
                range.Font.Size = 20;           // 设置字体大小  
                range.Font.ColorIndex = 5;      // 设置字体颜色  
                range.Interior.ColorIndex = 6;  // 设置单元格背景色  
                range.HorizontalAlignment = XlHAlign.xlHAlignCenter;// 设置单元格水平居中  
                range.VerticalAlignment = XlVAlign.xlVAlignCenter;// 设置单元格垂直居中  
                range.Value2 = "设置行高和列宽";// 设置单元格的值  
 
                range = sheet.get_Range("B2", "D4");// 获取多个单元格  
                range.Merge(Missing.Value);         // 合并单元格  
                range.Columns.AutoFit();            // 设置列宽为自动适应  
                range.NumberFormatLocal = "#,##0.00";// 设置单元格格式为货币格式  
        // 设置单元格左边框加粗  
                range.Borders[XlBordersIndex.xlEdgeLeft].Weight = XlBorderWeight.xlThick;  
        // 设置单元格右边框加粗  
                range.Borders[XlBordersIndex.xlEdgeRight].Weight = XlBorderWeight.xlThick;  
                range.Value2 = "合并单元格";  
 
                // 页面设置  
                sheet.PageSetup.PaperSize = XlPaperSize.xlPaperA4;          // 设置页面大小为A4  
                sheet.PageSetup.Orientation = XlPageOrientation.xlPortrait; // 设置垂直版面  
                sheet.PageSetup.HeaderMargin = 0.0;                         // 设置页眉边距  
                sheet.PageSetup.FooterMargin = 0.0;                         // 设置页脚边距  
                sheet.PageSetup.LeftMargin = excel.InchesToPoints(0.354330708661417); // 设置左边距  
                sheet.PageSetup.RightMargin = excel.InchesToPoints(0.354330708661417);// 设置右边距  
                sheet.PageSetup.TopMargin = excel.InchesToPoints(0.393700787401575);  // 设置上边距  
                sheet.PageSetup.BottomMargin = excel.InchesToPoints(0.393700787401575);// 设置下边距  
                sheet.PageSetup.CenterHorizontally = true;                  // 设置水平居中  
 
                // 打印文件  
                sheet.PrintOut(Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);  
                  
                // 保存文件到程序运行目录下  
                sheet.SaveAs(System.Windows.Forms.Application.StartupPath + "\demo.xls", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);  
 
                excel.ActiveWorkbook.Close(false, null, null); // 关闭 Excel 文件且不保存  
            }  
            catch (Exception ex)  
            {  
                MessageBox.Show(ex.Message);  
            }  
            finally 
            {  
                excel.Quit(); // 退出 Excel  
                excel = null; // 将 Excel 实例设置为空  
            }  
        }  
    }  

using System;
using System.Collections.Generic;
using System.Text;
using System.Reflection;
using System.Runtime.InteropServices;
using Microsoft.Office.Interop.Excel;
using ExcelApplication = Microsoft.Office.Interop.Excel.ApplicationClass;

namespace ExcalDemo
{
    public class ExcelFiles
    {
        public void CreateExcelFiles()
        {
            //创建一个 Excel 实例
            ExcelApplication excel = new ExcelApplication();
            try
            {
                // 注释掉的语句是:从磁盘指定位置打开一个 Excel 文件
                //excel.Workbooks.Open("demo.xls", Missing.Value, Missing.Value,
        //Missing.Value,Missing.Value, Missing.Value, Missing.Value,
        //Missing.Value, Missing.Value, Missing.Value, Missing.Value,
        //Missing.Value, Missing.Value, Missing.Value, Missing.Value);
               
                excel.Visible = false;// 不显示 Excel 文件,如果为 true 则显示 Excel 文件
                excel.Workbooks.Add(Missing.Value);// 添加工作簿
                Worksheet sheet = (Worksheet)excel.ActiveSheet;// 获取当前工作表

                Range range = null;// 创建一个空的单元格对象
               
                range = sheet.get_Range("A1", Missing.Value);// 获取单个单元格
                range.RowHeight = 20;           // 设置行高
                range.ColumnWidth = 20;         // 设置列宽
                range.Borders.LineStyle = 1;    // 设置单元格边框
                range.Font.Bold = true;         // 加粗字体
                range.Font.Size = 20;           // 设置字体大小
                range.Font.ColorIndex = 5;      // 设置字体颜色
                range.Interior.ColorIndex = 6;  // 设置单元格背景色
                range.HorizontalAlignment = XlHAlign.xlHAlignCenter;// 设置单元格水平居中
                range.VerticalAlignment = XlVAlign.xlVAlignCenter;// 设置单元格垂直居中
                range.Value2 = "设置行高和列宽";// 设置单元格的值

                range = sheet.get_Range("B2", "D4");// 获取多个单元格
                range.Merge(Missing.Value);         // 合并单元格
                range.Columns.AutoFit();            // 设置列宽为自动适应
                range.NumberFormatLocal = "#,##0.00";// 设置单元格格式为货币格式
        // 设置单元格左边框加粗
                range.Borders[XlBordersIndex.xlEdgeLeft].Weight = XlBorderWeight.xlThick;
        // 设置单元格右边框加粗
                range.Borders[XlBordersIndex.xlEdgeRight].Weight = XlBorderWeight.xlThick;
                range.Value2 = "合并单元格";

                // 页面设置
                sheet.PageSetup.PaperSize = XlPaperSize.xlPaperA4;          // 设置页面大小为A4
                sheet.PageSetup.Orientation = XlPageOrientation.xlPortrait; // 设置垂直版面
                sheet.PageSetup.HeaderMargin = 0.0;                         // 设置页眉边距
                sheet.PageSetup.FooterMargin = 0.0;                         // 设置页脚边距
                sheet.PageSetup.LeftMargin = excel.InchesToPoints(0.354330708661417); // 设置左边距
                sheet.PageSetup.RightMargin = excel.InchesToPoints(0.354330708661417);// 设置右边距
                sheet.PageSetup.TopMargin = excel.InchesToPoints(0.393700787401575);  // 设置上边距
                sheet.PageSetup.BottomMargin = excel.InchesToPoints(0.393700787401575);// 设置下边距
                sheet.PageSetup.CenterHorizontally = true;                  // 设置水平居中

                // 打印文件
                sheet.PrintOut(Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
               
                // 保存文件到程序运行目录下
                sheet.SaveAs(System.Windows.Forms.Application.StartupPath + "\demo.xls", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

                excel.ActiveWorkbook.Close(false, null, null); // 关闭 Excel 文件且不保存
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                excel.Quit(); // 退出 Excel
                excel = null; // 将 Excel 实例设置为空
            }
        }
    }
}