這個需要用odbc連接
Ⅱ vba連接SQL資料庫方法
如下:自己改一下:
Subaa()
DimcnAsNewADODB.Connection
DimrsAsNewRecordset
Str1="select區域,內=SUM(casewhen新替換區內外='替換區內'then1else0end),外=SUM(casewhen新替換區內外='替換區外'then1else0end)from宏站groupby區域"
strcn="Provider=sqloledb;Database=test;Uid=sa;Pwd=30687724;datasource=127.0.0.1,1433;"
cn.Openstrcn
rs.OpenStr1,cn
Dimi
Fori=1Tors.Fields.Count
Cells(1,i)=rs.Fields(i-1).Name』FIELDS是從0開始的,所以這里要-1
Range("a2").CopyFromRecordsetrs
Nexti
Ⅲ vba 如何連接SQ資料庫
很簡單,拖一個adodc控制項上去
,然後連接即可
如果沒有可以去下載
Ⅳ 如何用VBA調用資料庫中數據
首先在工具 引用 中引入ADO組件(全名叫Microsoft ActiveX Data什麼的,很好好找),然後聲明一個連接變數 conn as ADODB.Connetion用來連接資料庫,這里需要連接字元串,不知道你是什麼類型資料庫,所以連接字元串無法給出,再聲明一個數據集變數ds as ADODB. DATASET用於執行SQL語句並返回結果集,得到結果集之後就可以訪問裡面的內容了
Ⅳ 求教VBA連接SQL資料庫的詳細方法及解釋。
1、基本上所有的資料庫都有對應的寫法(有些資料庫是要裝連接驅動才能連),比如"Provider=Microsoft.Jet.OLEDB.4.0(用來連接access)或者provider =MSDASQL,而且每種資料庫也可能會有多種連接方法(Provider意即資料庫引擎),常見的有下面這些
Provider 代碼 Provider
ADSDSOObject Active Directory Services
Microsoft.Jet.OLEDB.4.0 Microsoft Jet databases
MSDAIPP.DSO.1 Microsoft Internet Publishing
MSDAORA Oracle databases
MSDAOSP Simple text files
MSDASQL Microsoft OLE DB provider for ODBC
MSDataShape Microsoft Data Shape
MSPersist Locally saved files
SQLOLEDB Microsoft SQL Server
2、參見http://www.w3school.com.cn/ado/met_conn_open.asp#connectoptionenum
3、這樣就可以對book1.xlsx中的數據使用sql語法進行操作
4、當你需要返回結果的,比如說你要查詢資料庫符合某個條件的有幾條記錄,或者說取出資料庫中符合條件的一批記錄的時候就要用數據集,單一的conn.execute只能執行操作,不能返回數據,必須配合結果集使用才可取回數據。
Ⅵ excel用VBA連到資料庫讀出數據
網路經驗有詳細的圖文文章(網頁鏈接)介紹編程語句,注意一點,不同的資料庫連接代碼是不同的。
另外,例子代碼是把表中的數據全部讀到一個表裡面,你可以然後在VLOOKUP填寫表的BC列。
Ⅶ vbaExcel連接資料庫的好處
EXCEL vba 資料庫連接
聽語音
原創
|
瀏覽:7393
|
更新:2016-06-23 16:12
|
標簽:EXCELVBA
Ⅷ 用vba如何連接網上的sql資料庫
代碼如下:有問題,發網路消息給我。
在Microsoft visual basic中,工具-引用 Microsoft ActiveX Data Objects 2...選一個高版本的
Dim conn As New ADODB.Connection
connStr = "Driver={SQL Server};DataBase=test;Server=(local);UID=sa;PWD=123"
conn.Open connStr '連接資料庫
Dim rs As New Recordset
sql = "select * from a" '查看錶a
rs.Open sql, conn, 3, 3
Do While Not rs.EOF '循環表a的內容
MsgBox (rs("field1")) '顯示表中field1欄位內容
rs.MoveNext
Loop
'connStr = "Driver={SQL Server};DataBase=test;Server=(local);UID=sa;PWD=123"
'test是資料庫名
'(local)是伺服器名或IP地址,可以:192.168.1.1,可以是:www.sina.com.cn
'sa是資料庫用戶
'123是資料庫用戶密碼
Ⅸ VBA 連接資料庫
Private Sub Form_Load()
Adodc1.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\123.mdb;persist security info=false"
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from test"
Adodc1.Refresh
Combo2.AddItem "編號"
Combo2.AddItem "摩托車"
Combo3.AddItem "輛數"
Combo3.AddItem "車牌號"
Combo3.Text = "輛數"
Combo2.Text = "編號"
Combo1.Text = Adodc1.Recordset.Fields("編號")
Do While Not Adodc1.Recordset.EOF
Combo1.AddItem Adodc1.Recordset.Fields(Combo2.Text).Value
Adodc1.Recordset.MoveNext
Loop
End Sub
這是我用ADO控制項連接access的代碼 你看一下
Ⅹ 如何用vba連接資料庫
Public Sub SynTableConfig()
Dim cnn As New ADODB.Connection, sh As Worksheet
Dim rs As New ADODB.Recordset
Dim cnnStr As String, SQL As String
'建立與SQL Server資料庫伺服器的連接
cnnStr = "Provider=SQLOLEDB;Initial Catalog=" & myDataBase & ";User ID=" & myname & ";Password=" & mypassword & ";Data Source=" & serverip
cnn.ConnectionString = cnnStr
cnn.Open
SQL = "select * from sys_table where id='123' order by 表名稱"
Set rs = cnn.Execute(SQL)
While Not rs.EOF
.............
rs.MoveNext
Wend
rs.Close
Set rs = Nothing
cnn.Close
Set cnn = Nothing
End Sub