讀取excel的sql
1. 使用sql語句如何對Excel工作表數據進行查詢
SQL語句是一種標準的資料庫語言,其可以在任何關系型資料庫管理系統中使用。在 Excel 表格中,使用SQL語句可以實現對Excel工作表數據進行查詢的 方法 。以下是我為您帶來的關於使用SQL語句對Excel工作表數據進行查詢,希望對您有所幫助。
使用SQL語句對Excel工作表數據進行查詢1、啟動Excel並打開工作簿,在這個工作簿中,工作表Sheet1放置商品信息記錄,如圖1所示;工作表Sheet2用於對商品記錄進行查詢,其結構如圖2所示。
圖1放置商品信息記錄的工作表
圖2用於商品記錄查詢的工作表
2、打開Visual Basic編輯器,在工程資源管理器中插入一個模塊,在模塊的「代碼」窗口中輸入如下程序代碼:
Sub CheckData()
Dim cnn As ADODB.Connection '聲明連接對象變數
Dim rs As ADODB.Recordset '聲明記錄集對象
Dim strSql As String
Dim str As String
On Error Resume Next
Set cnn=CreateObject("ADODB.Connection") '創建連接對象變數
Set rs=CreateObject("ADODB.Recordset") '創建記錄集對象記錄
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;"_&"Extended Properties=Excel 8.0;"_&"Data Source="&ThisWorkbook.FullName
str=ActiveSheet.Range("B1").Value '獲取當前單元格內容
strSql="Select*FROM[Sheet1$]Where商品like '%"&str&"%'"'創建數據篩選命令
rs.Open strSql,cnn,adOpenStatic
With ActiveSheet
.Range("A4:D100").ClearContents '清除單元格記錄
.Range("A4").CopyFromRecordset rs '復制篩選結果
End With
rs.Close
cnn.Close
Set rs=Nothing
Set cnn=Nothing
End Sub
3、首先在Sheet2工作表中輸入需要查詢的商品名稱,如圖3所示。運行CheckData()過程,在Sheet2工作表中將列出查詢結果,如圖4所示。
圖3輸入商品名稱
圖4獲得查詢結果
使用SQL語句如何對Excel工作表數據進行查詢相關 文章 :
★ excel2007使用sql語句查詢的方法
★ excel2007寫sql語句的教程
★ 如何將excel數據導入sql的方法
★ Excel2013使用教程基礎
★ excel數據導入SQL資料庫的教程
★ excel表導入sql資料庫的教程
★ excel導入sqlserver資料庫方法
★ 計算機英語
★ excel表格製作教程
var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm..com/hm.js?"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })();2. 如何使用SQL語句實現對Excel工作表數據的查詢
--1.開啟遠程查詢支持
exec sp_
configure
'show advanced options' ,1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
--2.鏈接Excel Microsoft ACE 12.0 OLE DB Provider 讀Excel數據(注意Excel必須事先關閉)
select * from
openrowset('Microsoft.ACE.OLEDB.12.0','Excel 12.0;HDR=Yes;DATABASE=C:/Users/nichk/Desktop/data.xls', Sheet1$);
--3.記得用完選項後,關閉這些選項
exec sp_configure 'Ad Hoc Distributed Queries',0
reconfigure
exec sp_configure 'show advanced options',0
reconfigure
--4.查看是不是關閉
exec sp_configure記得電腦必須安裝oledb提供程序(可搜索AccessDatabaseEngine.exe在微軟官網下載安裝),不同的版本訪問方式不一樣,如下是各版本的訪問方式:
--> Jet 引擎訪問 Excel 97-2003
select * from
OpenRowSet
('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:/97-2003.xls', 'select * from [Sheet1$]')
select * from OpenRowSet('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:/97-2003.xls', [Sheet1$])
select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:/97-2003.xls')...[Sheet1$]
select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0', 'Data Source=D:/97-2003.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1"')...[Sheet1$]
--> ACE 引擎訪問 Excel 97-2003
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:/97-2003.xls', 'select * from [Sheet1$]')
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:/97-2003.xls', [Sheet1$])
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:/97-2003.xls')...[Sheet1$]
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Data Source=D:/97-2003.xls;Extended Properties="Excel 12.0;HDR=Yes;IMEX=1"')...[Sheet1$]
--> ACE 引擎訪問 Excel 2007
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:/2007.xlsx', 'select * from [Sheet1$]')
select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:/2007.xlsx', [Sheet1$])
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:/2007.xlsx')...[Sheet1$]
select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Data Source=D:/2007.xlsx;Extended Properties="Excel 12.0;HDR=Yes;IMEX=1"')...[Sheet1$]
3. 濡備綍鐢╯ql鍙杄xcel琛ㄤ腑鏌愬崟鍏冩牸鐨勫
鍙浠ュ厛鐢⊿QL璇誨彇Excel鏁版嵁錛岀劧鍚庡啀鎵炬煇鍗曞厓鏍
--SQL璇誨彇Excel鏁版嵁
select * from OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="C:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
鏈夊悎騫剁殑灝變笉濂藉仛浜