设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12345下一页
返回列表 发新帖
查看: 18756|回复: 44
打印 上一主题 下一主题

[窗体] 如何批量导入CSV文件到ACCESS

[复制链接]
跳转到指定楼层
1#
发表于 2007-8-31 21:36:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
手中有成千上万个CSV格式的文件,如果通过手工方式导入到ACCESS中,势必要花很多时间.有没有谁知道可以批量导入CSV文件到ACCESS的代码?或者有没有谁知道将CSV文件批量转换成XLS文件的代码?(转换成XLS后就可以批量导入到ACCESS中了)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅
2#
发表于 2007-9-1 14:47:41 | 只看该作者
Public Function ReadCSVFile(ByVal strFilePath As String, ByVal strFileName As String)
Dim I As Integer
Dim intCount As Long

'打开数据链接关键
conn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
          "DBQ=" & strFilePath & ";Extensions=asc,csv,tab,txtersist Security Info=False"

With rs
    .CursorType = 2
    .LockType = 3
    .CursorLocation = 3
    .ActiveConnection = conn
End With

SQLcsv = "SELECT * FROM [" & strFileName & "]"
rs.Open SQLcsv
rs.Move (1)          '移动到指定记录
intCount = DCount("[ship]", "info", "[ship]='" & rs(16) & "'")      '获取表中记录重复数
If intCount > 1 Then  '进行判断

    Response = MsgBox("是否要覆盖原有[" & rs(16) & "],点是将更新所有[" & rs(16) & "]数据?", 4 + 32 + 256, "系统提示")
    If Response = vbNo Then   ' 当用户按下“否”。
       rs.Close
        conn.Close
         Set rs = Nothing
           Set conn = Nothing
                  Exit Function
    End If
    DoCmd.SetWarnings False
    DoCmd.RunSQL "DELETE * from info where ship='" & rs(16) & "'"           '删除重复数据
    DoCmd.SetWarnings True
  End If
      Set conn1 = CurrentProject.Connection
    sql = "Select * From info "
    rs1.Open sql, conn1, 1, 3
Do Until rs.EOF   '循环更新数据表

   
    rs1.AddNew
    For I = 0 To 26
     rs1(I) = rs(I)
    Next
     
rs.MoveNext
Loop

rs1.UpdateBatch
rs1.Close
conn1.Close
Set rs1 = Nothing
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing
End Function

自写的函数,楼主更改一下便可以批量导入csv文件了
3#
发表于 2007-9-1 14:52:08 | 只看该作者
刚刚出炉的,楼主趁热吃吧!
4#
 楼主| 发表于 2007-9-1 16:05:07 | 只看该作者
版主的函数是不是将CSV文件导入到ACCESS后都自成一个表呢?我的意思是将现有的所有CSV文件的数据都导入到ACCESS的一个表中,然后再对表进行相关的数据操作.麻烦版主帮忙!
5#
发表于 2007-9-1 16:09:16 | 只看该作者
同理的,我只是把它函数化而已
6#
发表于 2007-9-1 17:09:04 | 只看该作者
GG,这个函数写成两个函数,是不是条理更加清晰一点也好理解一点啊
7#
 楼主| 发表于 2007-9-1 18:37:56 | 只看该作者
那么这个函数在窗体的控件中怎么调用呢?我很菜的,谢谢版主帮忙!
8#
发表于 2007-9-1 18:40:07 | 只看该作者
请上传你的示例说明文件我给你改改吧.这样也方便别人使用,现在这个函数只是我给一网友临时写的而已.
9#
 楼主| 发表于 2007-9-1 20:45:11 | 只看该作者
我做了一个示例,请版主帮忙填入代码,谢谢了!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
10#
发表于 2007-9-2 09:15:51 | 只看该作者
CSV格式是啥东东?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-1 20:32 , Processed in 0.113360 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表