各位大哥!我在目录中做好了EXCEL表.然后每次我把数据录入保存后!我如何导入在ACCESS中的数据表呢!而每次导入后的数据是不能覆盖ACCESS中数据表内已存好的数据.谢谢各位!帮帮下!
解决方案 »
- Vb 6.0 如何获取人员的域群组?
- 怎么指定MSHFlexGrid某行某列的背景颜色?
- Collection 的問題
- 类似“游戏:红色警戒”背景图片移动的问题。
- 怎么让窗口不要在最前
- 希望结识广大CSDN的朋友!来者均加分
- 谁有无限制的activethread控件,通知一下, 很急!
- 请教大虾
- 水晶报表连接的问题,1.做了个*.rpt文件路径为d:\xfdk\*.mdb 2.程序中调用时是在app.path\*.mdb 3.为什么在用户用户哪里还要找设计用到
- *****怎么才能将XLS的表头也就是字段名加到ACCESS数据库中,能否举例说明!!!!!
- 数据库 这样写为什么总是出错?
- 这个怎么搞啊??求一条sql
Dim r As New ADODB.Recordset
Dim SQL As String
Dim ttxtSPLB As String
Dim Result
Dim Row_l
Dim Col_L
Dim Grid1()
Dim i As Integer
Dim t As Integer
Dim C As IntegerDim z As Integer
Dim s As Long
If MsgBox("粘贴的数据格式为 [规格],[单位],[摘要];确认没有错吗???", vbYesNo) = vbNo Then
Exit Sub
End IfIf MsgBox("确认选择的商品类别[" & TreeView1.SelectedItem.FullPath & "]没有错误吗?" & vbCrLf & "如发现错误,再修改将增添巨大的工作量!", vbYesNo) = vbYes Then
'开始批量粘贴数据
ttxtSPLB = Mid(TreeView1.SelectedItem.Key, 2)
Result = Clipboard.GetText
z = 0
s = 0
Row_l = Split(Result, vbCrLf)
For i = 0 To UBound(Row_l)
Col_L = Split(Row_l(i), Chr(9))
For t = 0 To UBound(Col_L)
If z = 0 Then
ReDim Grid1(UBound(Row_l), UBound(Col_L))
z = 1
End If
Grid1(i, t) = Col_L(t)
Next
'Debug.Print
Next
For i = 0 To UBound(Grid1, 1) - 1
SQL = "insert into s_tab_spgg(splb,size,unit,zyxx) values("
SQL = SQL & "'" & ttxtSPLB & "',"
SQL = SQL & "'" & Replace(Trim(CStr(Grid1(i, 0)) & " "), "'", "''") & "',"
SQL = SQL & "'" & Replace(Trim(CStr(Grid1(i, 1)) & " "), "'", "''") & "',"
SQL = SQL & "'" & Replace(Trim(CStr(Grid1(i, 2)) & " "), "'", "''") & "')"
'‘ MsgBox SQL
CN.Execute SQL
txtZT = CStr(Grid1(i, 0)) & CStr(Grid1(i, 1)) & CStr(Grid1(i, 2))
txtZT.Refresh
Next
End If
End Sub
需要预先做的事:事先建立好一个空的MDB数据库和数据表,数据表的结构要与导入的EXCEL一致.VB代码大体如下:
工程->引用ACCESS对象
...
Dim ACC As New Access.Application
...
ACC.OpenCurrentDatabase DBName'DBName就是你前面建的那个空的MDB文件(含全路径)ACC.DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, TableName, ExcelName, True, SheetName'TableName就是你建立的MDB中的那个空表名称
'ExcelName就是要导入的EXCEL文件名(含全路径)
'SheetName就是指定导入哪一个工作表导入之后,就可以用OPDATABASE或者其他方法打开