C#操作excel单元格的方法

在打开excel文件以后给单元格赋值,获得单元格值,删除单元格的时候的方法:

 

1、打开空的excel文件

Excel.Application MyExcel = new Excel.Application();
            Excel.Workbook workbook = MyExcel.Workbooks.Open(@"d:\1.xlsx", 0, false, 5, System.Reflection.Missing.Value, System.Reflection.Missing.Value, false, System.Reflection.Missing.Value, System.Reflection.Missing.Value, true, false, System.Reflection.Missing.Value, false, false, false);

            Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets[1];//1代表是sheet1

 

2、给某一个单元格赋值和获取值

MyExcel.Cells[1, 2] = "First Row First Column";

Excel.Range r = (Excel.Range)sheet.Cells[1, 1];
 string s1 = r.Text.ToString(); 
 string s2 = r.Value2.ToString();//获取值需要用range

 

3、给一个range的单元格赋值

Excel.Range rang2 = worksheet.get_Range(worksheet.Cells[1, 1], worksheet.Cells[1, 100]);//创建一个range

需要一个相同大小的数组给range赋值:int[] i_arr = new int[100];

 

rang2.Value2 = i_arr;

 

4、删除一个range单元格

rang2.Delete(Excel.XlDeleteShiftDirection.xlShiftUp);

 

5、保存、关闭打开的excel文件

            MyExcel.DisplayAlerts = false;
            MyExcel.AlertBeforeOverwriting = false;

            MyExcel.ActiveWorkbook.Save();
            //MyExcel.ActiveWorkbook.SaveCopyAs(@"d:\tmp\2.xlsx");

            MyExcel.Quit();

 

ps;使用range的方式给单元格赋值效率比单元格一个一个赋值高很多。10w行数据只需10秒

展开阅读全文

没有更多推荐了,返回首页