真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

關(guān)于vb.netxlsx的信息

vb.net EXCEL 問題

使用了VB.NET開發(fā)一個訪問excel讀取數(shù)據(jù)并修改的小程序,有一些經(jīng)驗(yàn)性的東西和大家共享,如果有誤還請大家指正。

創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站制作、成都網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元濱海做網(wǎng)站,已為上家服務(wù),為濱海各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792

大致分為這樣幾個部分來說明:

1、 準(zhǔn)備部分:

準(zhǔn)備部分我們需要添加excel library的引用到工程中:我使用office2003,它的庫文件為 Microsoft excel 11.0 object library。如果使用excel2000,那么它使用的是Microsoft excel 9.0 object library。

有需要時(shí),我們添加Imports 命名空間。

我在這個程序中只是訪問了excel的數(shù)據(jù),不需要命名空間了哈。

2、 聲明一些對象:

這些對象并不是都需要,前面三個應(yīng)該有,后面的,你需要什么對象就聲明:

Dim excelapp As Excel.Application ‘聲明一個application對象

Dim excelworkbook As Excel.Workbook ‘聲明一個工作簿對象

Dim excelsheet As Excel.Worksheet ‘聲明一個工作表對象

等等…如:

Dim excelrange As Excel.Range ‘聲明一個范圍對象

3、 訪問一個excel文件:

excelapp = New Excel.Application

excelworkbook = excelapp.Workbooks.Open(strfile) ‘訪問到工作簿:這個strfile 是文件的路徑,我從打開文件對話框中得到的。

excelsheet = excelworkbook.Sheets.Item(1) ‘訪問到工作表:item使用索引值來得到sheet對象的引用

excelsheet.activate

我們可以得到此文件中的值:

定義一個string變量:

Dim strcellvalue as string

Strcellvalue=excelsheet.cells(1,1).value ‘得到A1單元格的內(nèi)容。

修改的時(shí)候反過來就可以了:

excelsheet.cells(1,1).value= Strcellvalue

4、 善后:

在程序的每一個退出口操作excel對象,保存或者不保存:

Excelworkbook.save

Excelworkbook.close

Excelapp=nothing

5其它:

需要注意~上面的代碼需要一些容錯機(jī)制,比如:

If Not excelworkbook Is Nothing Then 這樣的話來達(dá)到程序的正確運(yùn)行

需要判斷現(xiàn)在excel又沒有打開。如果有excel進(jìn)程正在運(yùn)行。你的代碼很可能會影響到打開的excel,像Excelworkbook.close這樣的語句雖然前面已經(jīng)很好的唯一指定了工作簿,但不能很武斷的進(jìn)行魯莽的操作,我們需要判斷現(xiàn)在excel的運(yùn)行情況。

另外,VB.NET 讀取Excel 2007的xlsx文件和讀取老的.xls文件是一樣的,都是用Oledb讀取,僅僅連接字符串不同而已。讀取xlsx 用的是Microsoft.Ace.OleDb.12.0;具體操作方法如下:

Public Shared Function GetExcelToDataTableBySheet(ByVal FileFullPath As String, ByVal SheetName As String) As DataTable

'string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + FileFullPath + ";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此連接只能操作Excel2007之前(.xls)文件

Dim strConn As String = ("Provider=Microsoft.Ace.OleDb.12.0;" "data source=") + FileFullPath ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"

'此連接可以操作.xls與.xlsx文件

Dim conn As New OleDbConnection(strConn)

conn.Open()

Dim ds As New DataSet()

Dim odda As New OleDbDataAdapter(String.Format("SELECT * FROM [{0}]", SheetName), conn)

'("select * from [Sheet1$]", conn);

odda.Fill(ds, SheetName)

conn.Close()

Return ds.Tables(0)

End Function

讀取Excel文件時(shí),可能一個文件中會有多個Sheet,因此獲取Sheet的名稱是非常有用的。根據(jù)Excel物理路徑獲取Excel文件中所有表名的具體操作方法如下:

Public Shared Function GetExcelSheetNames(ByVal excelFile As String) As [String]()

Dim objConn As OleDbConnection = Nothing

Dim dt As System.Data.DataTable = Nothing

Try

'string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + excelFile + ";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此連接只能操作Excel2007之前(.xls)文件

Dim strConn As String = ("Provider=Microsoft.Ace.OleDb.12.0;" "data source=") + excelFile ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"

'此連接可以操作.xls與.xlsx文件

objConn = New OleDbConnection(strConn)

objConn.Open()

dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, Nothing)

If dt Is Nothing Then

Return Nothing

End If

Dim excelSheets As [String]() = New [String](dt.Rows.Count - 1) {}

Dim i As Integer = 0

For Each row As DataRow In dt.Rows

excelSheets(i) = row("TABLE_NAME").ToString()

i += 1

Next

Return excelSheets

Catch

Return Nothing

Finally

If objConn IsNot Nothing Then

objConn.Close()

objConn.Dispose()

End If

If dt IsNot Nothing Then

dt.Dispose()

End If

End Try

End Function

Vb.net 操作Excel如何選擇sheet

具體操作如下:

首先,須在項(xiàng)目里引用: 添加引用-Com-Microsoft Excel 9.0 Object Library (這是EXCEL2000)

1 打開Excel: dim myexcel as new Excel.Application() myexcel.visible=true

2 添加新的工作簿: myexcel.Workbooks.add()

3 設(shè)定第二個工作表為活動工作表: myexcel.worksheets(2).Acivate()

4 打開指定的Excel文件: myexcel.workbooks.open("c:\my.xls")

5 顯示Excel窗口: myexcel.visible=true

6 更改Excel的標(biāo)題欄: myexcel.caption="歡迎,歡迎!"

7 為Excel的單元格賦值: myexcel.cells(1,4).value=100 此語句使Excel當(dāng)前工作表的第一行第四列,即D1單元格等于100, 也可以這樣寫: myexcel.Range("D1").value=100

8 設(shè)置指定列的寬度(單位:字符個數(shù)): myexcel.ActiveSheet.colums(1).columnwidth=20 設(shè)定當(dāng)前工作表第1列的寬度為20

9 設(shè)置指定行的高度(單位:磅): myexcel.ActiveSheet.rows(1).rowHeight=1/0.035 1磅 =0.035厘米 設(shè)置第1行的高度為1CM

10 插入分頁符: myexcel.Activesheet.rows(20).pagebreak=1 在第20行前插入分頁符

11 刪除分頁符: myexcel.Activesheet.columns(20).pagebreak=0 在第20列前刪除分頁符

12 指定邊框線的寬度: myexcel.Activesheet.range("B3:D3").borders(1).weight=3 其中borders參數(shù)指定單元格邊框的位置: 1:左 2:右 3:頂 4:底 5:斜\ 6:斜/

13 指定邊框線條的類型: myexcel.Activesheet.range("B1:D3").borders(2).linestyle=1 此語句將當(dāng)前工作表的B1:D3單元格的右邊框設(shè)置為實(shí)線 linestyle參數(shù): 1:細(xì)實(shí)線 2:細(xì)虛線 3:點(diǎn)虛線 4:雙細(xì)實(shí)線

14 設(shè)置頁腳: myexcel.activesheet.pagesetup.centerfooter="第p頁" 注意:設(shè)置頁眉頁腳時(shí)要保證計(jì)算機(jī)上裝有打印機(jī),否則出錯!

15 設(shè)置頁眉: myexcel.activesheet.pagesetup.centerfooter="第p頁"

16 設(shè)置頁眉到頂斷距離為2cm: myexcel.Activesheet.pagesetup.Headermargin=2/0.035

17 設(shè)置頁腳到底端距離為2cm: myexcel.Activesheet.pagesetup.Footermargin=2/0.035

18 設(shè)置頂邊邊距為2cm: myexcel.Activesheet.pagesetup.topmargin=2/0.035

19 設(shè)置底邊邊距為2cm: myexcel.Activesheet.pagesetup.Bottommargin=2/0.035

20 設(shè)置左邊邊距為2cm: myexcel.Activesheet.pagesetup.Leftmargin=2/0.035

21 設(shè)置右邊邊距為2cm: myexcel.Activesheet.pagesetup.Rightmargin=2/0.035

22 設(shè)置頁面水平居中: myexcel.activesheet.pagesetup.CenterHorizontally=true

23 設(shè)置頁面垂直居中: myexcel.activesheet.pagesetup.Centervertically=true

24 設(shè)置頁面紙張大小 (1,窄行 8.5*11 ;39 ,寬行 14*11): myexcel.activesheet.pagesetup.papersize=1

25 打印單元格網(wǎng)格線: myexcel.activesheet.pagesetup.PrintGridlines=true

26 復(fù)制整個工作表 : myexcel.activesheet.Usedrange.Copy

27 復(fù)制指定區(qū)域 : myexcel.activesheet.range("a1:b5").Copy

28 粘貼: myexcel.worksheets("sheet2").range("A1").PasteSpecial

29 在第2行前插入一行 : myexcel.activesheet.rows(2).Insert

30 在第2列前插入一列 : myexcel.Activesheet.Columns(2).Insert

31 合并 C4:D4 單元格: myexcel.Activesheet.Range("C4:D4").Merge()

32 自動調(diào)整第2列列寬: myexcel.activesheet.Columns(2).AutoFit

33 設(shè)置字體: myexcel.Activesheet.cells(2,1).font.name="黑體"

34 設(shè)置字體大小: myexcel.Activesheet.cells(2,1).font.size=25

35 設(shè)置字體為斜體: myexcel.Activesheet.cells(2,1).font.Italic=true

36 設(shè)置字體為粗體: myexcel.Activesheet.cells(2,1).font.Bold=true

37 清除單元格內(nèi)容: myexcel.activesheet.cells(2,1).ClearContents

38 打印預(yù)覽工作表: myexcel.Activesheet.PrintPreview

39 打印工作表: myexcel.Activesheet.Printout

40 工作表另存為: myexcel.ActiveWorkbook.saveas("C:\book2.xls")

41 放棄存盤: myexcel.ActiveWorkbook.saved=false

42 關(guān)閉工作簿: myexcel.Workbooks.close

43 退出 Excel: myexcel.quit

清楚了這些命令,操作excel不就變的很輕松了。

vb.net怎么訪問excel表格

我的是2007版本,其它類似

1.在工程中引用Microsoft Excel 12.0 Object Library

2、在通用對象的聲明過程中定義EXCEL對象:

Dim xlApp As Excel.Application

Dim xlBook As Excel.WorkBook

Dim xlSheet As Excel.Worksheet

3、在程序中操作VB.NET EXCEL常用命令:

Set xlApp = CreateObject("Excel.Application") '創(chuàng)建EXCEL對象

Set xlBook = xlApp.Workbooks.Open("文件名") '打開已經(jīng)存在的EXCEL工件簿文件

xlApp.Visible = True '設(shè)置EXCEL對象可見(或不可見)

Set xlSheet = xlBook.Worksheets("表名") '設(shè)置活動工作表

xlSheet.Cells(row, col) =值 '給單元格(row,col)賦值

xlSheet.PrintOut '打印工作表

xlBook.Close (True) '關(guān)閉工作簿

xlApp.Quit '結(jié)束EXCEL對象

Set xlApp = Nothing '釋放xlApp對象

xlBook.RunAutoMacros (xlAutoOpen) '運(yùn)行EXCEL啟動宏 xlBook.RunAutoMacros (xlAutoClose) '運(yùn)行EXCEL關(guān)閉宏

還有很多,這個要自己慢慢摸索


文章名稱:關(guān)于vb.netxlsx的信息
文章鏈接:http://weahome.cn/article/hjjcie.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部