读书人

怎的判断此薄有哪些表

发布时间: 2012-12-14 10:33:07 作者: rapoo

怎样判断此薄有哪些表?
Dim extend_str As String
Dim execl_cnn As New ADODB.Connection 'conn

Dim execl_rst As New ADODB.Recordset 'rs
Dim execl_count_rst As New ADODB.Recordset '纪录数量
Dim execl_field_rst As New ADODB.Recordset

Dim execl_strconn As String
Dim execl_strcmd As String
Dim execl_count_str As String
Dim insertStr As String
Dim MyVar
MyVar = 1
execl_cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & OpenCdc1.FileName & _
";Extended Properties=Excel 8.0;"

'下面这段不知道要怎样改?
For Each Worksheet In execl_cnn'这句要怎么改?
debug.print worksheet.name '这句要怎么改?
Next


[最优解释]
你这是将EXCEL表当作数据库来操作,因此应该使用SQL语句查询来得到.

试试以下语句:

select * from sysobjects where xtype='u'


如果要用for each枚举的方式,那就试试如下代码:

Dim oXLSAPP As Object 'New Excel.Application            '后期绑定,无需引用对象
Dim oWSheets As Object 'Worksheets
Dim oWSheet As Object 'Worksheet

Set oXLSAPP = CreateObject("Excel.Application") '创建EXCEL对象

oXLSAPP.Workbooks.Open "kkk.xls" '打开EXCEL文件
oXLSAPP.Workbooks(1).Activate

Set oWSheets = oXLSAPP.Workbooks(1).Worksheets

For Each oWSheet In oWSheets '遍历工作表
Debug.Print oWSheet.Name
Next

Set oWSheet = Nothing
Set oWSheets = Nothing

oXLSAPP.Workbooks.Close
oXLSAPP.Quit
Set oXLSAPP = Nothing

[其他解释]
引用:
你这是将EXCEL表当作数据库来操作,因此应该使用SQL语句查询来得到.

试试以下语句:


SQL code

select * from sysobjects where xtype='u'


如果要用for each枚举的方式,那就试试如下代码:


VB code

Dim oXLSAPP As Object 'New Excel.Application ……

不错,不用数据库更简单。

读书人网 >VB

热点推荐