C#中创建、打开、读取、写入、保存Excel的一般性代码
首先,在引用的COM中找到Microsoft Excel 11.0 Object Library,添加。
using System; using System.Reflection; // 引用这个才能使用Missing字段 using Excel;
namespace CExcel1 { class Class1 { [STAThread] static void Main(string[] args) //创建Application对象 Excel.Application xApp = new Excel.ApplicationClass(); xApp.Visible = true; //得到WorkBook对象, 可以用两种方式之一: 下面的是打开已有的文件 Excel.Workbook xBook = xApp.Workbooks._Open(@"D:\Sample.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); //xBook=xApp.Workbooks.Add(Missing.Value);//新建文件的代码 //指定要操作的Sheet,两种方式: Excel.Worksheet xSheet = (Excel.Worksheet)xBook.Sheets[1]; //Excel.Worksheet xSheet=(Excel.Worksheet)xApp.ActiveSheet; //读取数据,通过Range对象 Excel.Range rng1 = xSheet.get_Range("A1", Type.Missing); Console.WriteLine(rng1.Value2); //读取,通过Range对象,但使用不同的接口得到Range Excel.Range rng2 = (Excel.Range)xSheet.Cells[3, 1]; Console.WriteLine(rng2.Value2); //写入数据 Excel.Range rng3 = xSheet.get_Range("C6", Missing.Value); rng3.Value2 = "Hello"; rng3.Interior.ColorIndex = 6; //设置Range的背景色 //保存方式一:保存WorkBook xBook.SaveAs(@"D:\CData.xls", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value); //保存方式二:保存WorkSheet xSheet.SaveAs(@"D:\CData2.xls", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value); //保存方式三 xBook.Save(); xSheet = null; xBook = null; xApp.Quit(); //这一句是非常重要的,否则Excel对象不能从内存中退出 xApp=null; } }