需要将cvs文件读取到ADODB的recordset中,但是使用conExcel.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & StrXlsFilePath & ";Extended Properties=""Excel 8.0;HDR=Yes;TypeGuessRows=1024;IMEX=1"""连接字符串,系统提示格式不对(External table is not in expected format),其中StrXlsFilePath 是cvs文件的完整路径。因为有很多cvs的文件,并且文件还会动态的增加,所以不能使用ODBC数据源访问cvs。请高人指点如何将这些cvs文件读到一个recordset里面。高分在线等待!!!!!

解决方案 »

  1.   

    strCnn="Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\;Extensions=asc,csv,tab,txt;"
      

  2.   

    Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
        cn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\;Extensions=asc,csv,tab,txt;"
        rs.CursorLocation = adUseClient
        rs.Open "select * from test.csv", cn, 1, 1
        Set DataGrid1.DataSource = rs
      

  3.   


    faysky2(),感谢,这样数据是可以读出来了,但是不能区分字段。它把一整行当作一个字段读取出来了,是不是应该在哪里设置它的字段间的分割符号啊?
      

  4.   

    csv文件已经被逗号分割了!我们读取数据出来已经在表格里面分割好了
      

  5.   

    Private Sub Command1_Click()
    Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
        cn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\;Extensions=asc,csv,tab,txt;"
        rs.CursorLocation = adUseClient
        rs.Open "select * from N0015.csv", cn, 1, 1
         Do While Not rs.EOF
            Debug.Print rs.Fields(0).Value   '得到你想要的列的值!
            rs.MoveNext
         Loop
        Set DataGrid1.DataSource = rs
    End Sub
      

  6.   

    可是这个csv文件不是用逗号分割,而是用Tab分割。这样导出得文件就是不能把记录给区分开来了!在参数中有没有可以设置分割符号得参数?
      

  7.   

    Schema.ini 文件你没定义关于此主题请参考以下文章(不要只看标题,请认真仔细地察看上述文章以及相关的评论):
        导入文本文件时如何指定字段类型?《表》
        http://access911.net/index.asp?u1=a&u2=77FAB01E16DC----------------------- 911 社区回帖个人签名 start -----------------------http://access911.net/csdn 无须注册提供附件上传功能,如果你提问的时候有附件请到上述地址上传并将链接复制粘贴。http://access911.net 用 7 年时间整理了大量有关 Access 的原创资料,请有空的时候多用文章搜索功能如果您有兴趣加入ACCESS编程的专项研究可以来QQ群“ACCESS上海研究班”看看,加入的方法请看这里《个性化的access911.net(七)QQ 群加入规则(专门讨论 ACCESS 的 )》
    http://access911.net/?kbid;72FAB01E16DCECF3----------------------- 911 社区回帖个人签名 end ----------------------- 向上看呦!
      

  8.   

    conExcel.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & StrXlsFilePath & ";Extended Properties=Text;HDR=Yes"rsExcel.Open "SELECT * FROM filename#csv"
      

  9.   

    标准的 csv 文件不需要 Schema.ini
      

  10.   

    of123() ,运行到第一句时,出现could not find installable ISAM的错误。是不是还是connectstring有问题?
      

  11.   

    问题解决了,将后缀从csv改为tab就可以了。