Office中國(guó)論壇/Access中國(guó)論壇

 找回密碼
 注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

如何用VB or VBA 讀取excel所有數(shù)據(jù)

1970-1-1 08:00| 發(fā)布者: 未知| 查看: 7837| 評(píng)論: 0

取得excel文件所有內(nèi)容:

'add microsoft ado frist.
Private Sub Command2_Click()
    Dim adoConnection As New ADODB.Connection
    Dim adoRecordset As New ADODB.Recordset
    CommonDialog1.ShowOpen
    'OLE DB + ODBC Driver 方式:
    'adoConnection.Open "Data Provider=MSDASQL.1;driver=Microsoft Excel Driver (*.xls);DBQ=e:\temp\book2.xls"
    'Microsoft.Jet.OLEDB.4.0 方式,(建?)
    adoConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & CommonDialog1.FileName & ";Extended Properties='Excel 8.0;HDR=Yes'"
   
    adoRecordset.Open "select * from [sheet1$]", adoConnection, adOpenKeyset, adLockOptimistic
    Debug.Print adoRecordset.RecordCount
    Dim i As Integer
    Do Until adoRecordset.EOF
        For i = 0 To adoRecordset.Fields.Count - 1
            Debug.Print adoRecordset.Fields.Item(0).Name
            Debug.Print adoRecordset.Fields.Item(0).Value
        Next i
        adoRecordset.MoveNext
    Loop

End Sub
 


但還不知道如何取得sheet名,不好意思,那位老鳥(niǎo)知道請(qǐng)告知,謝謝

sheet名用Excel.Application對(duì)象

Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook

Set xlApp = New Excel.Application
Set xlBook = xlApp.Workbooks.Open("C;\123.xls"))

For i = 1 To intSheetSum
    strTemp=xlBook.Worksheets(i).name
Next i
Dim xlsconn As New ADODB.Connection
Dim xlscmd As New ADODB.Command
Dim rs As New ADODB.Recordset
xlsconn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\1.xls;Extended Properties=HTML EXPORT;Persist Security Info=False"
xlsconn.Open
Set rs = xlsconn.Execute("select * from [sheet1]")
set mshflexgrid.datasource=rs
rs.close
mshflexgrid.refresh


Dim xlsconn As New ADODB.Connection
Dim xlscmd As New ADODB.Command
Dim rs As New ADODB.Recordset
xlsconn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\1.xls;Extended Properties=excel 8.0;Persist Security Info=False"
xlsconn.Open
Set rs = xlsconn.Execute("select * from [sheet1]")
set mshflexgrid.datasource=rs
rs.close
mshflexgrid.refresh
 

最新評(píng)論

相關(guān)分類

QQ|站長(zhǎng)郵箱|小黑屋|手機(jī)版|Office中國(guó)/Access中國(guó) ( 粵ICP備10043721號(hào)-1 )  

GMT+8, 2025-7-17 00:24 , Processed in 0.060483 second(s), 16 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回頂部