1. 如何用vba代碼將access資料庫連接求代碼
Microsoft Office Access是由微軟發布的關系資料庫管理系統。它結合了 MicrosoftJet Database Engine 和 圖形用戶界面兩項特點,是 Microsoft Office 的系統程序之一。用vba代碼將access資料庫連接求代碼,代碼如下:
Sub FYMXDL()
Dim XQID As Integer
Dim JZID As Integer
Dim FYID As Integer
Dim FBXZ As String '分包性質
Dim DW As String
Dim SARR(1 To 31) As Double
Dim rst As New ADODB.Recordset
mYpath = ThisWorkbook.Path & "jzfydata.accdb"
Set cONn = CreateObject("ADODB.Connection")
cONn.ConnectionString = "Provider=Microsoft.Ace.OleDB.12.0;Data Source=" & mYpath
cONn.ConnectionString = cONn.ConnectionString & ";Jet OLEDB:Database "
cONn.Open
XQID = Cells(3, 2).Value
JZID = Cells(3, 5).Value
'清空改小區-建築的費用明細
Sql = "delete from fymxb where 小區ID=" & XQID & " AND 建築ID = " & JZID
cONn.Execute Sql
Const kshh = 7
hh = kshh
Do While Cells(hh, 3).Value > 0
FYID = Cells(hh, 3).Value
FBXZ = Cells(hh, 11).Text
For i = 1 To 31
SARR(i) = Round(Cells(hh, 13 + i - 1).Value, 2)
Next i
Sql = Sql & "," & SARR(i)
Next i
Sql = Sql & " )"
cONn.Execute Sql
hh = hh + 1
Loop
End Sub
2. 如何在VBA中用ADO連接遠程的access資料庫
遠程連接access資料庫的幾個方法:
1.建立VPN(Virtual Private Network),然後把伺服器中mdb文件所在的 Folder 共享即可。連接方法如下:
「Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\伺服器名\\文件夾 \\mydata.mdb;Jet
OLEDB:Database Password=datapass;Persist Security Info=False」
2.把資料庫放在Web 伺服器上,使ADO或RDO通過RDS(Remote Data Service) 及IIS來實現:
如果伺服器設置了ODBC DSN的話,連接方法如下:
"Provider=MS Remote;Remote Server=http://伺服器名;Remote Provider=MSDASQL;DSN=AdvWorks;Uid=dataUserName;Pwd=dataPassWord"
如果設置的是OLE DB Provider 的話,連接方法如下:
"Provider=MS Remote;Remote Server=http://伺服器名;Remote
Provider=Microsoft.Jet.OLEDB.4.0; Data Source=資料庫文件路徑,"+ "admin,"+"" (資料庫用戶名為:admin;密碼為空)
3.編寫伺服器程序,通過TCP/IP,傳遞Recordset。
4.使用第三方控制項,如:ADO Anywhere或UDAParts RDB等。
5.使用XMLHTTP
應用舉例
OledbConnection myconn = null;
myconn = new OledbConnection("192.168.1.155", "DSN=mydata;DRIVER={Microsoft Access Driver (*.mdb)};UID=test;PWD=test;"); //其中伺服器IP是 192.168.1.155 ;資料庫名是 mydata ;資料庫用戶名這密碼都是test myconn.Open();
3. 用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是資料庫用戶密碼
4. vba 上傳數據到sql 資料庫問題
如果有數據就執行你的上傳處理,沒數據就退出
while cells(1,i) <> ""
上傳處理
i = i + 1
Wend
5. VBA execl將數據導入資料庫
Sub 把Excel數據插入資料庫中()
'*******************************************
'時間:2010-06-28
'作者:bengdeng
'功能:把當前工作表的數據增加到在程序文件同一目錄下進銷存表資料庫中
'注意:要在工具/引用中引用microsoft activex date objects x.x
' 其中x.x為版本號,可能會因為你安裝的office的版本不同而不同,本例引用了2.5版
'發布:http://www.excelba.com
'*******************************************
Dim conn As ADODB.Connection
Dim WN As String
Dim TableName As String
Dim sSql As String
Dim tStr As String
'資料庫名,請自行修改,路徑與當前工作簿在同一目錄
WN = "進銷存表.mdb"
'資料庫的表名與當前工作表名一致
TableName = ActiveSheet.Name
Set conn = New ADODB.Connection
conn.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0;" & _
"Extended Properties=Excel 8.0;" & _
"Data Source=" & ThisWorkbook.Path & "\" & ActiveWorkbook.Name
conn.Open
If conn.State = adStateOpen Then
sSql = "Insert Into [;DataBase=" & ActiveWorkbook.Path & "\" & WN & "]." & TableName & " Select * From [" & ActiveSheet.Name & "$]"
conn.Execute sSql
MsgBox "成功把數據插入到「" & TableName & "」中!", , "http://excelba.com"
conn.Close
End If
Set conn = Nothing
End Sub