2014-02-25 161 views
2

我從Excel文件創建一個表格然後查詢該表格。一旦我完成了桌子,我想放棄它。但我得到的錯誤從VBA中的Access中刪除表格

"Database engine could not lock table because "TableName" it is already in use by another program or process. 

這是一個邏輯錯誤,但我不知道如何關閉VBA中的表?我嘗試了CurrentDb.Close。在那兒。我認爲有一種方法可以關閉它,因爲它會在同一個會話中?我正在使用以下操作刪除表格:

db.Execute "DROP TABLE TableName", dbFailOnError 

是否可以刪除表格,還是必須解決只刪除行的問題?

T hank you!

+1

你應該可以。你能發表一段代碼嗎?記錄集可能需要關閉或設置記錄集=沒有工作 –

+0

這就是我需要的。我沒有發佈我的所有代碼,因爲它只是修改表/ SQL查詢,我認爲我只是錯過了一些我不是最大的粉絲的簡單語言。發佈作爲答案,我會接受它。謝謝@JimmySmith – gbam

回答

1

您應該可以像嘗試一樣刪除表格。如果您有一些打開的記錄集,表格會被鎖定。尋找沒有關閉這個表的連接。

這是您的代碼中最初的問題。

0

在DROP語句之前,記錄集可能需要關閉或者Set RecordSet = Nothing工作。