如何把CSV文件读到临时表里?

wplpss 2010-07-08 02:20:30
Access VBA中,如何把CSV文件读到一个临时表里面?
因为之后要在临时表里一行一行判断验证,没有逻辑错误才能更新到数据库里。
请举例说明。

另外,逐行判断CSV文件里的数据,除了上述方法,可不可以直接在CSV文件里一行
一行判断?如果可以的话,请举例说明。

谢谢!
...全文
113 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wplpss 2010-07-09
  • 打赏
  • 举报
回复
请看这个帖:
http://topic.csdn.net/u/20100709/11/e27a2282-8111-41e9-a6e4-da07cdf05220.html?30534
谢谢!这个帖一样给分!
wwwwb 2010-07-09
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wplpss 的回复:]
不是简单的判断,一行一行判断,哪一行有错,最后还得把错误的行目报出来。
所以,直接打开CSV恐怕不行吧。
得先把数据导入一个表里,或Linktable,然后用循环一行行判定。
[/Quote]
导入以临时表中,判断,如有问题,提示
ACMAIN_CHM 2010-07-09
  • 打赏
  • 举报
回复
[Quote]rs.open "insert into accesTable1 select * from [Text;DATABASE=C:\TEMP].[BOOK1.CSV] where f1<=f2+3",currentproject.connection
[/Quote]

这个不就是读到临时表accesTable1 中吗?
wplpss 2010-07-09
  • 打赏
  • 举报
回复
不是简单的判断,一行一行判断,哪一行有错,最后还得把错误的行目报出来。
所以,直接打开CSV恐怕不行吧。
得先把数据导入一个表里,或Linktable,然后用循环一行行判定。
ACMAIN_CHM 2010-07-09
  • 打赏
  • 举报
回复
ACCESS中你可以简单的直接用ADO打开CSV文件。

rs.open "select * from [Text;DATABASE=C:\TEMP].[BOOK1.CSV]",currentproject.connection


关键看你的具体 “判断验证,没有逻辑错误才能更新到数据库里” 是指什么。 如果只是简单的判断,则可以直接使用SQL语句实现。
rs.open "insert into accesTable1 select * from [Text;DATABASE=C:\TEMP].[BOOK1.CSV] where f1<=f2+3",currentproject.connection

ACMAIN_CHM 2010-07-08
  • 打赏
  • 举报
回复
可以直接以ADO打开CSV文件然后逐记录处理。


你需要的处理是什么?
WWWWA 2010-07-08
  • 打赏
  • 举报
回复
示例:
Open "a.csv" For Input As #1
Do While Not EOF(1)
Line Input #1, fg
If Len(fg) <> 0 Then
If InStr(fg, "宝宝") > 0 Then
ty = True
Exit Do
End If
End If
Loop
Close #1
wwwwb 2010-07-08
  • 打赏
  • 举报
回复
贴你的文本内容
CSV就是TXT文件,如果CSV格式固定,可以直接用JETSQL导入。

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧