代码可以在一台计算机上运行 - 但不能在其他计算机上运行
Posted
技术标签:
【中文标题】代码可以在一台计算机上运行 - 但不能在其他计算机上运行【英文标题】:Code works on one computer - but not on others 【发布时间】:2019-06-04 16:34:50 【问题描述】:我有一个名为 CustItemExp 的表和一个名为 SetupExp 的表(只有一条记录,2 个字段,Droppath = C:\ECM,LocationName = Test)。我正在将 CustItemExp 传输到 csv 文件并调用 SetupExp 中的 1 个字段以添加名称 + date.csv。
问题是它只能在 1 台计算机上运行。我需要能够在其他电脑上打包使用
当我在另一台计算机上运行它时,我得到了; 运行时错误“3625” 文本文件规范“CustItemExp”不存在。您不能使用规范导入、导出或链接。
我可以在数据库中看到表 CustItemExp!
DoCmd.TransferText acExportDelim, , "CustItemExp", _
Trim(DFirst("droppath", "dbo_SetupExp")) & _
Trim(DFirst("LocationName", "dbo_SetupExp")) & _
Format(Now, "yymmdd HH:MM:SS") & ".csv", True
【问题讨论】:
错误信息很清楚。 CustItemExp 不存在。 确实存在,可能访问看不到?它在数据库中,我可以看到并编辑它。 请注意,它指定“文本文件规范'CustItemExp'不存在” 所以我看到的表不存在? 【参考方案1】:这是在抱怨您的导出文件规范在数据库中不存在。这是 DoCmd.TransferText 命令上的参数 2。正如Microsoft所指出的:
规范名称
可选
变体
一个字符串表达式,它是您创建并保存在当前数据库中的导入或导出规范的名称。 对于固定宽度的文本文件,您必须指定一个参数或使用schema.ini 文件,该文件必须与导入、链接或导出的文本文件存储在同一文件夹中。
【讨论】:
不确定您的意思,这适用于一台计算机,但不适用于另一台计算机。该表不是“固定宽度”,因为它包含几个长度不同的字段 你能显示你的整个命令吗? (假路径和文件名很好) DoCmd.TransferText acExportDelim, , "CustItemExp", _ Trim(DFirst("droppath", "dbo_SetupExp")) & _ Trim(DFirst("LocationName", "dbo_SetupExp")) & _ 格式(现在,“yymmdd HH:MM:SS”)&“.csv”,真【参考方案2】:我解决了!我制作了一个打包的解决方案,它现在可以在任何计算机上运行
【讨论】:
以上是关于代码可以在一台计算机上运行 - 但不能在其他计算机上运行的主要内容,如果未能解决你的问题,请参考以下文章