我接管了其他人创建的Access数据库,我几乎没有Access体验。当我尝试运行导入xml文件的代码时,我收到Run-time error '3265': Item not found in this collection.
错误。当我调试时,以下代码的第4行以黄色突出显示。能否请您提供一般性原因的提示?此过程每天都会使用新的馆藏文件运行,因此我们删除前一天的Analytics表并创建一个新表。提前谢谢。
'import holdings file
DoCmd.DeleteObject acTable, "ANALYTICS"
Application.ImportXML XmlHoldingsFile, acAppendData
CurrentDb.TableDefs("INSTRUMENT").Name = "ANALYTICS"
答案 0 :(得分:0)
每当在自动化过程中编辑/删除/重新创建像Access'Tabledeff,Forms,Querydef或Reports这样的集合中的对象时,循环遍历整个集合以查找所需对象并有条件地编辑或删除它是有帮助的。 。
这类似于在Excel工作簿中重命名或删除工作表(遍历所有工作表并重命名,如果存在此工作表):
Dim db As Database
Dim tbldef As TableDef
Set db = CurrentDb
For each tbldef in db.TableDefs
If tbldef.Name = "INSTRUMENT" Then
tbldef.Name = "ANALYTICS"
End if
Next tbldef
' UNINITIALIZE OBJECTS
Set tbldef = Nothing
Set db = Nothing