在VB中對Excel數據進行提取的一種常見的方法是使用ADO(ActiveX Data Objects)連接到Excel工作簿并執行SQL查詢。以下是一個示例代碼,演示如何從Excel工作簿中提取數據:
Sub ExtractDataFromExcel()
Dim conn As Object
Dim rs As Object
Dim strConn As String
Dim strSQL As String
Dim i As Integer
'創建ADO連接
Set conn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
'連接到Excel工作簿
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\path\to\your\excel\file.xlsx;Extended Properties=""Excel 12.0 Xml;HDR=YES;IMEX=1;"";"
conn.Open strConn
'執行SQL查詢
strSQL = "SELECT * FROM [Sheet1$]"
rs.Open strSQL, conn
'提取數據并輸出到Immediate窗口
Do While Not rs.EOF
For i = 0 To rs.Fields.Count - 1
Debug.Print rs.Fields(i).Value
Next i
rs.MoveNext
Loop
'關閉連接
rs.Close
conn.Close
'釋放對象
Set rs = Nothing
Set conn = Nothing
End Sub
在上面的代碼中,我們首先創建了一個ADO連接對象和一個記錄集對象。然后,我們使用CreateObject
方法創建了一個ADO連接對象并連接到Excel工作簿。接下來,我們執行了一個SQL查詢來選擇工作簿中的所有數據。最后,我們使用Do While
循環來遍歷記錄集中的數據,并輸出到Immediate窗口。
請注意,您需要將C:\path\to\your\excel\file.xlsx
替換為您實際的Excel文件路徑。您還需要根據實際情況修改SQL查詢語句,以選擇您需要提取的特定數據。