作者:乔山办公网日期:
返回目录:excel表格制作
Sub test()
Dim cn As ADODB.Connection
Dim strSQL As String
Dim lngRecsAff As Long
Dim Headers As Boolean
Dim strConn As String
Dim path As String
On Error GoTo test_Error
Headers = True
path = "c:\20131212.xls"
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & path & ";" & _
"Extended Properties=""Excel 8.0; IMEX=1;HDR=YES"""
Debug.Print strConn
Set cn = New ADODB.Connection
cn.Open strConn
'Import by using Jet Provider.
strSQL = "Insert INTO [odbc;Driver={SQL Server};" & _
"Server=192.168.6.111;Database=answer;" & _
"UID=sa;PWD=password].test1 " & _
"Select * FROM [Sheet1$]"
Debug.Print strSQL
cn.Execute strSQL, lngRecsAff
Debug.Print "Records affected: " & lngRecsAff
cn.Close
Set cn = Nothing
On Error GoTo 0
Exit Sub
test_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure test of VBA Document ThisWorkbook"
End Sub
在Excel中录入好数据以后,可能会有导入数据库的需求,这个时候就需要利用一些技巧导入。
如何将excel表导入数据库的方法:
1、对于把大量数据存放到数据库中e68a847a686964616f332,最好是用图形化数据库管理工具,可是如果没有了工具,只能执行命令的话这会是很费时间的事。那只能对数据进行组合,把数据组成insert语句然后在命令行中批量直行即可。
2、对下面数据进行组合,这用到excel中的一个功能。
在excel中有个fx的输入框,在这里把组好的字符串填上去就好了。
注:字符串1 & A2 &字符串2 & ...
A2可以直接输入,也可以用鼠标点对应的单元格。
3、每个字符串之间用 & 符号进行连接。下面是第一条连接字符串
="insert into tavern values('"&A2&"','"&B2&"','"&C2&"','"&D2&"');"
写好后按回车键Enter就能组合出对应的字符串了。
insert into tavern values('jw_agi','曙光','0','1');
4、组好第一行的字符串后,把鼠标放到单元格右下方,出现加粗的十字,单击按下(别松开),一直往下拉,直到最后一行再放开就行了。
5、这样就把insert语句都整理好了,接下来就是把这些语句批量执行就可以了。
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
if Not rs.EOF then
For iCols = 0 To rs.fields.Count - 1
Sheets(1).Cells(1, iCols + 1).Value = rs.fields(iCols).Name
Next iCols
Sheets(1).Cells(2, 1).CopyFromRecordset rs
endif
sub test()
Set cnn = CreateObject("ADODB.Connection")
Set rs = CreateObject("Adodb.Recordset")strCn= "Provider=sqloledb;Server=R9HDET7;Database=dbname;Uid=username;Pwd=password"
cnn.Open strCn
SQL = ""
cnn.Open strCn '与数据库建立连接,如果成功,返回连接对象zdcn
rs.Open SQL , cn '执行strSQL所含的SQL命令内,结果保存在rs记录集对象中
cnn.Close
Set cnn = Nothing
end sub
请参考
连接数据库后,通过写SQL语句容实现增删改查