ADOlogging集返回旧(陈旧)数据

我写了使用ADODBlogging集的VBA代码从Excel工作表中检索数据以填充用户表单。 每次运行代码时,工作表被replace为新数据。

就在几个星期前,我开始有一个问题,即logging集对象不会返回正确的数据,而是返回以前会话中使用的数据。 即使在closuresExcel文件并重新打开之后,也会发生这种情况。

例如,我将运行数据集A的代码,然后closuresExcel文件。 我重新打开Excel文件,用数据集Breplace工作表,然后运行代码。 而不是返回数据集B,它将返回数据集A.发生这种情况时,我已经确认工作表实际上包含数据集B,而不是A.为了提供更多的背景信息,我相信这是从我使用ACE连接string,而不是JET。 我被迫做这个转换,因为我开始得到JET连接string的错误。 我使用的连接string可以在下面find。

我将不胜感激任何有关这个问题的反馈。 如果需要更多信息,请告诉我。

strConnString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & mstrFile & ";Extended Properties=""Excel 12.0 Macro;HDR=YES;IMEX=1""" 

这个问题已经解决了(感谢Skippy)。 将新数据导入工作表后保存文件解决了问题。 在不保存文件的情况下,连接指向包含陈旧数据的文件版本。