国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

如何在不打開Excel的情況下獲取電子表格的名稱

在(2005、2008、2010、2012等)中,可以使用ADO技術(shù)連接到Excel,然后獲取電子表格的名稱。通過以下詳細(xì)步驟,你可以實現(xiàn)這一目標(biāo)。 Excel連接字符串詳解要在不打開Excel的情況

在(2005、2008、2010、2012等)中,可以使用ADO技術(shù)連接到Excel,然后獲取電子表格的名稱。通過以下詳細(xì)步驟,你可以實現(xiàn)這一目標(biāo)。

Excel連接字符串詳解

要在不打開Excel的情況下獲取電子表格的名稱,首先需要了解Excel連接字符串的構(gòu)成。在代碼中,可以使用類似以下的連接字符串:

```

Dim Str As String "Provider;" _

"Data Source" bookpath ";" _

"Extended Properties" "Excel 8.0;HDRNo;IMEX1;"

```

針對不同版本的Excel,需要使用不同的Provider。對于Excel 2007及以上版本,使用"Provider";而對于Excel 2003及以下版本,則需使用"provider"。需要特別注意的是,bookpath代表Excel文件的路徑地址,包括文件名稱。另外,Extended Properties中的參數(shù)設(shè)置也很重要,比如HDR為1表示第一行為字段,為0表示第一行不是字段,IMEX的值有0、1、2三種,分別代表導(dǎo)出、導(dǎo)入、混合模式。

獲取Excel中各個Sheet表的名稱

接下來,我們需要編寫代碼來實現(xiàn)獲取Excel中各個Sheet表的名稱??梢越柚韵率纠a:

```vb

Public Function ObtainSheetName(ByVal bookpath As String) As ListBox

'要求引用Imports

' 用于OFFICE2007(含2007)以上

' 用于office2003(含2003)以下

Dim lst As New ListBox

Dim Str As String "Provider;" _

"Data Source" bookpath ";" _

"Extended Properties" "Excel 8.0;HDRNo;IMEX1;"

Dim con As New OleDbConnection(Str)

()

'返回Excel的架構(gòu),包括各個sheet表的名稱、類型、創(chuàng)建時間和修改時間等

Dim dt As DataTable (, New Object() {Nothing, Nothing, Nothing, "TABLE"})

()

For k As Integer 0 To - 1

Str (k)("TABLE_NAME").ToString

'如果最后一個字符是$,說明是sheet名稱

If Str Like "*$" Then

Str (" ", "")

Str ("$", "")

(Str)

End If

Next k

ObtainSheetName lst

End Function

```

以上代碼中,通過連接到Excel數(shù)據(jù)庫,獲取Excel的架構(gòu)信息,并逐個判斷各個表的名稱是否符合Sheet表的命名規(guī)則,最終將符合條件的Sheet名稱添加到ListBox控件中。通過調(diào)用該函數(shù),即可在不打開Excel的情況下獲取電子表格的名稱。

標(biāo)簽: