Office中国论坛/Access中国论坛

标题: grant版主,关于批量导入csv文件,再次地请教版主! [打印本页]

作者: xxj0109    时间: 2009-3-16 18:00
标题: grant版主,关于批量导入csv文件,再次地请教版主!
grant版主,关于批量导入csv文件,见帖子http://www.office-cn.net/vvb/thread-56710-1-1.html。我也想继续请教您:
1、如果我想每次仅选择待导入数据文件夹下的一个csv文件,代码如何更改呢?
2、如果这些csv处在打开状态下,我还能够导入并进行查询工作吗?

grant版主,找上面那个帖子几天了,麻烦您帮忙再解答一下好吗?能把那个帖子里的附件修改一下吗?我是新手。
拜托了!
谢谢!
作者: xxj0109    时间: 2009-3-16 18:10
补充一句,导入完毕后,不删除原文件夹下的csv文件。
grant版主,急切地等待!。。。。。。
作者: xxj0109    时间: 2009-3-17 08:38
这个问题不能再请教了吗?继续等。。。。。。。。。。
作者: Grant    时间: 2009-3-17 10:04
本帖最后由 Grant 于 2009-3-17 10:09 编辑

1、如果我想每次仅选择待导入数据文件夹下的一个csv文件,代码如何更改呢?
更改列表框属性 多重选择=无
2.不删除原文件夹csv
    Dim mycount As Long
    Dim I As Integer
    mycount = Me.List1.ListCount   '列数
    If mycount = 0 Then
        MsgBox "导入完毕!'待导入的数据'文件夹中已经没有文件可以导入!"
            MsgBox "a"
        Exit Sub
    End If
For I = 1 To mycount
        Dim cur_path As String
        cur_path = CurrentProject.Path & "\待导入数据\"    '被导入的csv文件存放路径
        out_path = CurrentProject.Path & "\已导入数据\"    '已导入的csv文件存放路径
        Dim csv_name As String
        csv_name = Me.List1.ItemData(mycount - 1) '要导入的文件名:从最后一个开始导入
  
Call ReadCSVFile(cur_path, csv_name)  '调用模块
  Dim fso
  Set fso = CreateObject("Scripting.FileSystemObject")

  fso.MoveFile cur_path & csv_name, out_path & csv_name
'取消fso后即可.

        Me.List1.RemoveItem csv_name   '        '从原列表中删除
        mycount = mycount - 1
Next I
MsgBox "导入完成", vbInformation, "提示!"
作者: xxj0109    时间: 2009-3-17 10:16
谢谢gg版主,去学习喽
作者: xxj0109    时间: 2009-3-17 10:47
版主,我好像没说明白。在不删除、改变待导入csv文件夹下,我想每次可以任意地选择其中的一个csv文件,并在同一个主窗体上体现出来。以便对该主窗体做查询等工作(已完成)。
另外,这种导入方法对处于打开和更新状态的csv文件可以吗?
作者: xxj0109    时间: 2009-3-17 13:02

作者: Grant    时间: 2009-3-17 13:52
版主,我好像没说明白。在不删除、改变待导入csv文件夹下,我想每次可以任意地选择其中的一个csv文件,并在同一个主窗体上体现出来。以便对该主窗体做查询等工作(已完成)。
另外,这种导入方法对处于打开和更新状 ...
xxj0109 发表于 2009-3-17 10:47


任意选择一个csv文件不是回答了吗?

第二个问题独占打开,应该是不行,具体还没试过不知道能否更改打开方式.
作者: xxj0109    时间: 2009-3-17 14:21
我试运行时后,已导入的csv文件夹下好像还是把所有的csv都导入过来了。
还有,我怎么能在窗体上看到被导入的文件?
作者: Grant    时间: 2009-3-17 21:26
或者你上传你的示例,我给你测试一下
作者: xxj0109    时间: 2009-3-18 09:25
谢谢版主,那麻烦你了。
我的这些数据是在生产中产生的,处于打开和时时更新状态。如果能在这种状态下也能导入链接并查询就好了。我已经做了几天了。 [attach]36748[/attach]
作者: Grant    时间: 2009-3-18 11:37
汗,给这个文件我有什么用,还有一个办法可以实现.就是创建副本
用API对文件进行复制,然后在进行导入就不存在打开后无法链接导入的情况了.
作者: xxj0109    时间: 2009-3-18 16:01
我还是使用原贴的数据进行验证的。上面的那个压缩文件是我想要导入的内容。
另外,用api对文件进行复制是指什么?
我是用手工链接的。文件---获取外部文件。这样可以吗?[attach]36760[/attach]
作者: Grant    时间: 2009-3-18 16:52
不用移动用复制
fso.CopyFile cur_path & csv_name, out_path & csv_name
复制后,导入已复制后的文件.这样子问题不就解决了,用fso来解决.
作者: xxj0109    时间: 2009-3-18 17:43
还不是很懂fso,刚刚看过教程。尝试着先自己解决吧。有问题再来请教。
谢谢版主。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3