C# 操作Excel基礎(chǔ)實例淺析
C# 操作Excel基礎(chǔ)實例的開始我們先來看看實例實施的環(huán)境配置:
Windows XP
Microsoft Visual Studio 2008
office 2003
C# 操作Excel基礎(chǔ)實例網(wǎng)上搜索C#實現(xiàn)Excel操作的示例太多了,但不知道有多少是經(jīng)過驗證確實可行才發(fā)布出來的,也是因為開發(fā)需要,我找了一些代碼卻發(fā)現(xiàn)大多都不能正確執(zhí)行完畢,于是決定補充自己在實踐中遇到的要點以供參考。如下示例:
C# 操作Excel基礎(chǔ)實例的文件頭:
- using System.Reflection;
- // 引用這個才能使用Missing字段
- using Excel;
- Excel.ApplicationClass excel =
- new Excel.ApplicationClass();
- excel.Visible = true; //激活Excel
- Workbook wBook= excel.Workbooks.Add(true);
- //Worksheet wSheet = (Excel._Worksheet)wBook.ActiveSheet;
- Worksheet wSheet = (Excel.Worksheet)wBook.ActiveSheet;
- excel.Cells[3, 5] = "本公司電話: " + Phone;
- excel.Cells[4, 5] = "本公司傳真: " + Zhen;
- excel.Cells[5, 5] = "聯(lián)系人: " + ComName;
- excel.Cells[4, 1] = "客戶: " + CustomerName;
- excel.Cells[5, 1] = "聯(lián)系人: " + Associate;
- excel.Cells[3, 8] = "戶名:";
- excel.Cells[3, 9] = AccountName;
- excel.Cells[4, 8] = "開戶行:";
- excel.Cells[4, 9] = BranchName;
- excel.Cells[5, 8] = "帳號:";
- excel.Cells[5, 9] = "'" + AccountID;
- //設(shè)置禁止彈出保存和覆蓋的詢問提示框
- excel.DisplayAlerts = false;
- excel.AlertBeforeOverwriting = false;
- //保存工作薄
- //wBook.Save();
- //每次保存激活的表,
- //這樣才能多次操作保存不同的Excel表,
- //默認保存位置是在”我的文檔"
- //C# 操作Excel基礎(chǔ)實例
- excel.Cells.Font.Size = 12;
- excel.Cells.Font.Bold = false;
- //Excel.Range m_objRange = m_objRange.get_Range(1, 3);
- wSheet.get_Range(excel.Cells[1, 3],
- excel.Cells[1, 3]).Font.Size = 24;
- wSheet.get_Range(excel.Cells[1, 3],
- excel.Cells[1, 3]).Font.Bold = true;
- wSheet.get_Range(excel.Cells[3, 1],
- excel.Cells[3, 1]).Font.ColorIndex = 3;
- //此處設(shè)為紅色,不能用Font.Color來設(shè)置顏色
- //m_objRange.Cells.Font.Size = 24;
- //m_objRange.Cells.Font.Bold = true;
- //C# 操作Excel基礎(chǔ)實例
- excel.ActiveWorkbook.SaveCopyAs(filename);
- excel.Quit();
C# 操作Excel基礎(chǔ)實例代碼注釋部分只是簡單描述各語句的原由,個別的還是值得推敲的。
C# 操作Excel基礎(chǔ)實例語句一
Workbook wBook= excel.Workbooks.Add(true);
Workbooks.Add的參數(shù)是個object類型,通常使用true或null,表明工作簿在默認文檔下創(chuàng)建,或者使用枚舉值
XlWBATemplate.xlWBATWorksheet,但如果傳入一個excel完整文件名,卻相當于打開已有工作簿。
C# 操作Excel基礎(chǔ)實例語句二
Worksheet wSheet = (Excel.Worksheet)wBook.ActiveSheet;
這樣可以操作多個工作表的話,實例化之后加入到wBook.Worksheets中去。如果是打開已存在的工作簿,這條語句也可能會報錯,***是調(diào)用wBook.ActiveSheet來獲取或者再加些判斷。
C# 操作Excel基礎(chǔ)實例語句三
excel.ActiveWorkbook.SaveCopyAs(filename);
這兩句代碼至關(guān)重要,而且必不可少,否則,保存時會彈出“是否保存sheet1.xls”的對話框。判斷當前激活的表,并保存這個表。
C# 操作Excel基礎(chǔ)實例語句四
excel.Quit();
這個關(guān)閉一直有疑點,因為C#操作com非托管對象時,憑借Quit()還沒有釋放掉對象,excel進程不一定會終止,于是,有人使用KillProcess()來處理,我個人認為這不是一個好主意,可能會破壞其它正在執(zhí)行的excel進程。
null;權(quán)作安慰吧。不過有一點是一定要做到,就是在Quit()前不能再有任何更改,不然還是會彈出保存的對話框。所以退出前確保一定是執(zhí)行過WorkBook或是Application的Save()方法的。
對于在c#中操作excel應(yīng)用的方面很多,可能還會有些疑問出現(xiàn),知曉來龍去脈的朋友盡量補充以方便大家吧。
C# 操作Excel基礎(chǔ)實例的基本內(nèi)容就向你介紹到這里,希望對你了解和學(xué)習(xí)C# 操作Excel有所幫助。
【編輯推薦】