【问题标题】:Cannot connect csv to Excel thru ODBC无法通过 ODBC 将 csv 连接到 Excel
【发布时间】:2011-04-21 10:24:08
【问题描述】:

你好; 当文件打开时,我无法将 CSV 文件连接到电子表格。目前有一个不断更新的 csv 日志文件。我能够通过从外部源正常导入并每小时刷新一次将其连接到 Excel 电子表格。但是,它是一个大文件,所以我需要使用 EXCEL SQL 生成报告。它不允许我在打开文件时连接到该文件。它说 MS Jet 数据库引擎无法打开文件“未知”。它已经由另一个用户独占打开,或者我需要查看其数据的权限。如果授予许可是他的问题,我在哪里授予自己许可。在标准的 Impor 上,我在打开文件时读取文件没有问题,否则,会收到此消息并且无法继续。任何帮助,将不胜感激。如果我关闭更新程序,我可以运行查询,但如果更新正在运行,则不能。 使用 MSO 2007 W7 x64

【问题讨论】:

    标签: excel connection odbc


    【解决方案1】:

    它不允许我在打开文件时连接到它。

    没错,它不会 - 没有办法改变这一点。

    你必须找到另一种方法来解决你的问题。

    1. 文件有多大?您可以复制一个临时文件名,然后将 Excel 连接到该文件名。

    2. 听起来您正在访问一个日志文件。 LogParser 可以读取 CSV。无论如何,LogParser 具有出色的类似 SQL 的语法,并且可以比 ODBC 更快、更可靠地读取 CSV 文件。它也可以通过 Excel VBA(或脚本)进行编程。也许您可以使用 LogParser 提取感兴趣的值,然后将它们加载到您的 Excel 表中。

    我怀疑您最好的解决方案是使用 Excel VBA 中的 LogParser MSUtil.LogQuery 对象,将感兴趣的值提取到电子表格中。由于我不知道您实际上在做什么,这只是一个猜测!

    我不能高度推荐 LogParser - 它是一个很棒的工具,可以读取几乎所有标准类型的日志文件、CSV、TSV、W3C,以及纯文本文件和 Windows NT 事件日志:

    【讨论】:

    • 感谢您的回复。我能否在打开时通过 MSUTIL.LoqQuery 读取此文件并将结果集返回到我的 Excel 电子表格?
    • 可能:如果您可以在记事本中打开它,那么可以。这取决于打开它的“共享模式”。如果它在没有SHARE_DENY_READ 标志的情况下打开(它可能是),你会没事的。另一方面,如果它被打开 SHARE_DENY_READ 则没有标准工具能够打开它,因为这就是标志的含义。
    猜你喜欢
    • 2018-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-28
    • 2019-08-01
    • 2017-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多