首先是如何创建、打开、读取、写入、保存的一般性代码:
using system;
using system.reflection;
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;
 }
 }
}