使用C 對Excel文件的相關操作

2021-05-17 18:36:12 字數 2730 閱讀 2047

1.首先需要引入

excel

的com

元件,microsoft excel 11.0 object library 1.5(

該元件版本為

office2003)

新增該引用後在解決方案的引用資料夾裡會有

excel

和microsoft.office.core

兩個引用。

2.我們要對

excel

文件進行操作首先需要對

excel

文件的結構有乙個了解。乙個

excel

文件包含若干個

sheet

,每個sheet

裡又有若干個單元格。也就是說

excel

文件是乙個三層結構的實體:

book

文件物件

àsheet物件à

單元格物件。在c#

裡相應的提供了這三個物件的操作類

==excel

操作物件

定義了乙個excel操作物件,與具體文件無關

_workbook ==

book

物件_workbook

wbook = null;

定義了乙個

book

物件_workbook

sheet = null

;定義了乙個

sheet

物件microsoft.office.interop.excel.range ==

單元格物件

(renge

提供了一組對單元格的操作介面)

microsoft.office.interop.excel.range rangesheet = null;

定義了乙個單元格操作物件。

明白了excel的結構和c#中提供的對應的操作類或介面,對我們理解用程式實現excel的各種操作很有幫助。至少當需要在excel的哪個級別上操作時,你知道該在哪個類裡去找相應的方法。

3.c#

對excel文件操作的函式及功能

例項化乙個excel操作物件

讓其不可見(一般在寫的時候設定這個屬性,寫完後更改為true就可以展現在使用者面前)

用excel操作物件去開啟乙個excel文件實體(wbook)這裡主要乙個引數就是modelpath表示文件所在路徑

_workbook

sheet1 = (worksheet)wbook.sheets[1]

;獲得wbook裡的第乙個sheet

rangesheet=sheet1.get_range(sheet1.cells[rowindex,colindex],sheet1.cells[rowindex,colindex]);sheet

通過呼叫get_range函式獲得單元格的選定範圍,它是對excel操作最主要的乙個物件,因為我們對excel的操作實際上就是對單元格的操作。所以獲得了操作單元格物件就可以實現我們想要的任何操作比如

rangesheet.merge(this. rangesheet.mergecells);

如果不是對乙個單元格操作,即單元格的選定的是乙個範圍,可以用此函式實現合併單元格

rangesheet.horizontalalignment=microsoft.office.interop.excel.xlhalign.xlhalignleft;

設定單元格內容的對齊方式

rangesheet.value2

通過value2屬性給選定的單元格賦值

rangesheet.font.name = "

宋體";

字型的設定

rangesheet.font.size = 10;

字型大小

rangesheet.font.bold = true;

字型加粗

//繪製所菜單元格範圍內的線條型別,3為虛線,1為實線

rangesheet.borders.linestyle = 3; //

繪製所菜單元格範圍內上下左右邊框為連續的實線

rangesheet.borders.get_item(xlbordersindex.xledgetop).linestyle = microsoft.office.interop.excel.xllinestyle.xlcontinuous;

rangesheet.borders.get_item(xlbordersindex.xledgebottom).linestyle = microsoft.office.interop.excel.xllinestyle.xlcontinuous;

rangesheet.borders.get_item(xlbordersindex.xledgeright).linestyle = microsoft.office.interop.excel.xllinestyle.xlcontinuous;

rangesheet.borders.get_item(xlbordersindex.xledgeleft).linestyle = microsoft.office.interop.excel.xllinestyle.xlcontinuous; //

選定範圍內的對齊方式

rangesheet.horizontalalignment = microsoft.office.interop.excel.xlhalign.xlhaligncenter;

以下是網上找到一些關於excel操作的資源可通過鏈結檢視http://www.soaspx.com/dotnet/csharp/csharp_20091125_1762.html

使用C 對Excel文件的相關操作

1.首先需要引入excel的com元件,microsoft excel 11.0 object library 1.5 該元件版本為office2003 新增該引用後在解決方案的引用資料夾裡會有excel和microsoft.office.core兩個引用。2.我們要對excel文件進行操作首先需要...

C 讀Excel文件的資料

c 讀excel文件的資料 string strpath this.txtpath.text.trim string strexcelname this.txtexcelname.text.trim string strexceldocname this.txtexceldocname.text.t...

使用C 實現對Excel檔案的寫入操作

先推薦一波大佬的部落格吧 然後再自己實踐一下。1.首先出現的問題是 include stdafx.h 標頭檔案沒有定義 這個問題雖然重要,但是可以放在最後解決。還有這一篇 使用標準輸入進行成績輸入,使用fstream類進行excel表的填寫。我們的c 作業,如下所示 需要注意的是 1.可以不建立.c...