急!高分!怎样用vb把excel表中的数据导入数据库中。我想把excel表中的数据导入到sql server 数据库中(用vb实
急!高分!怎样用vb把excel表中的数据导入数据库中。 我想把excel表中的数据导入到sql server 数据库中(用vb实现)。不知道可不可以实现!请高手赐教!谢谢![解决办法] 试试用两个连接对象,一个连接EXCEL,一个连接SQL,最简单的方法是建两个记录集,一个是EXCEL的,读入,一个是SQL的,用 Set SQL_RS = EXCEL_RS 转移记录集,然后执行 sql_rs.update. 没试过,仅提个建议而已。 一般都是直接在SQL上导入,考虑你可能是用VB做客户端,不能直接由SQL访问你的硬盘。[解决办法] 楼上的不失为一种好方法 此外还有一种方法,那就是用Excel对象读取Excel的内容,然后在将其插入目标数据库中。[解决办法]
引用: 楼上的不失为一种好方法 此外还有一种方法,那就是用Excel对象读取Excel的内容,然后在将其插入目标数据库中。 VBA
[解决办法] 楼主的这个问题说的太泛泛了。
在我看来,VB 无所不能,因为有很多很多的 COM 为它服务。它可以访问 Exchange Server,因为有 CDO;它可以访问 SQL Server/Oracle/DB2...,因为有 ADO;当然它也可以访问 Excel/Word,因为有 Excel Object Library(EXCEL.EXE)/Microsoft Word Object Library(MSWORD.OLB) 等等。
这里所说的访问一般就是指的操作其对象数据,能够达到大部分你手工能做到的事情。比如,它能功过 ADO 访问 SQL Server,就意味着从通常的连接数据库、执行查询、删除数据、调用存储过程,到复杂的创建数据库、创建表等等操作都能做到。对于 Excel 来说,它能打开指定的 Excel 文件、读取工作表的数据、创建新的工作表、向指定的单元格中写入想要的数据等等。。。。。。
[解决办法] 把excel表当做外部数据库用sql语句导入就行了,网上一搜一片。
[解决办法] ’经实际测试,以下代码数据库和Excel之间互相导入导出,完全成功!
Private Sub Command1_Click()
'access导出到excel
Dim db As New ADODB.Connection
Dim sPath As String
db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Temp\Test\db1.mdb Persist Security Info=False"
sPath = App.Path + "\backup.xls"
If Dir(sPath) <> "" Then
Kill sPath
Else
Call db.Execute("select * into [Sheet1$] In '" & sPath & "' 'excel 8.0;' from 表1")
MsgBox "导出成功", vbOKOnly, "提示"
End If
db.Close
Set db = Nothing
End Sub
Private Sub Command2_Click()
'从excel导出到 access
Dim db As New ADODB.Connection
Dim sPath As String
db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Temp\Test\db1.mdb;Persist Security Info=False"
sPath = App.Path + "\backup.xls"
Call db.Execute("select * into Table4 From [Sheet1$] In '" & sPath & "' 'excel 8.0;'")
db.Close
Set db = Nothing
End Sub
[解决办法] DoCmd.TransferSpreadsheet acExport, 8, "tmp_fabric", excel_path & "\XLS\output to Excel\fabric_details", True, "" *****tmp_fabric为表名,后边跟着的是相对路径;
Beep MsgBox "Successfully Output To The file", vbInformation, "Notice" 我一段代码现在正在用,从表导入到EXCEL中的;[解决办法] Private Sub Cmd_FromPackingList_Click() '从EXCEL中导入表Packing List excel_path = CurrentProject.Path DoCmd.RunSQL "delete * from [Packing List]", -1 DoCmd.TransferSpreadsheet acImport, 8, "Packing list", excel_path & "\XLS\input to DB\Input To trims", True, "" Beep MsgBox "Successfully Input From Excel File", vbOKOnly, "Notice" End Sub 这一段是从EXCEL导入到数据库表中的,[解决办法] Adodc.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='文件路径';Persist Security Info=False;Extended Properties='Excel 8.0;HDR=Yes'" Adodc.RecordSource = "select * from [sheet1$]" Adodc.Refresh