症状
在 Microsoft Access 2010 数据库中运行 ImportExportText 宏或宏时,如果使用已保存的规范名称导入、导出或链接文本文件,并且在 Access 2010 中创建或修改了宏,则当你尝试运行宏时收到以下错误:
"文本文件规范" <x> "不存在。不能使用规范导入、导出或链接."请注意,"<x>" 的值对应于数据库的规范列表中的规范索引号。
原因
这是 Microsoft Access 2010 中的已知问题。
解决方案
对 Microsoft Access 2010 应用2011年6月累积更新:http://support.microsoft.com/kb/2544022注意: 如果在应用 6 2011 月的累积更新之前修改了包含 Access 2010 中的 TransferText 操作的宏,则在应用更新之后,你仍会收到运行宏的错误消息。 如果在 "设计" 视图中打开宏,则会看到文本规范已更改为 "规范索引号" ("x")。 为了解决此问题,您必须在 Access 2010 中重新选择正确的文本规范名称并保存宏。办法此问题可以通过使用下述方法之一来解决。方法 1:在 Access 的早期版本中创建/编辑宏。
-
在 Microsoft Access 2007 中打开数据库。
-
在宏的 "TransferText 操作" 部分中选择所需的规范名称。
-
保存并关闭宏。
-
在 Microsoft Access 2010 中打开数据库并运行宏。
方法 2:使用 Visual Basic for Applications 中的 TransferText 操作,而不是宏。可以使用 VBA 代码执行相同的宏操作。 例如,TransferText acImportDelim,"MyImportSpec","Table1","C:\FileName.txt" 有关使用 TransferText 的详细信息,请参阅以下文章: DoCmd. TransferText 方法(Access)Http://msdn.microsoft.com/en-us/library/ff835958.aspx方法 3:重命名规范,使其与其在规范列表中的位置相匹配。 若要使用新名称保存现有规范(实质上重命名规范),请按照下列步骤操作:在数据库中,通过选择 "外部数据" 选项卡并在 "导入 & 链接" 组中,单击 "文本文件",开始新的文本文件导入。
-
选择要导入的任何文本文件,单击 "确定"
-
单击 "高级"
-
单击 "规范"
-
选择现有规范,单击 "打开"
-
单击 "另存为" 并将其命名为相应的索引号(在规范列表中,第一个是 "1",第二个是 "2" 等)。
-
单击 "规范"
-
选择旧的规范名称,然后单击 "删除"
-
现在,旧规范用索引号命名
-
取消导入向导窗口
-
在 "设计" 视图中打开宏
-
在 "规范名称" 的组合框内,选择新的规范名称
更多信息
在 access 2010 中创建的宏将在 Access 中正常运行,直到在 Microsoft Access 2010 中对其进行编辑。