2015-06-02 77 views
1

我在用戶窗體中設計了幾個「幻像」對象,我在VBA(用於Excel)中進行設計。它們在表單的界面構建器部分中被刪除,並且在實際模塊中(至少在IDE顯示給我的模塊部分中)中沒有剩餘的對它們的引用。但是,這些對象仍然存在。我不能重新使用他們的名字,他們是可見的對象瀏覽器形式的成員(見EmployeeFormatFrameLabel1):即使在刪除後UserForm對象仍然存在

Object Browser

不能重複使用名稱:

Ambiguous Name

我真的可以用一些幫助來解決這個問題。我在研究這個問題時唯一能找到的是this,但它指的是Access數據庫,因此沒有多大幫助。這是我在Borland的C++ Builder中工作時經常遇到的一個非常類似的問題,它總是通過刪除代碼中對象的剩餘引用來解決。然而,我在這裏找不到任何東西(或者IDE不會向我展示它們)。

+0

嘗試導出表單副本(文件>導出文件),然後將其導入到一個新的空白工作簿中,以查看舊名稱是否消失 – barrowc

回答

1

VBA是一種解釋型語言。在VBE中,您按下輸入您的代碼語句時將轉換爲P代碼並保存在應用程序(例如Excel)中。

所以,如果你被幻影對象卡住,最好和最有效的方法是創建一個新的工作簿,並將所有的代碼和對象傳遞給它。究竟是什麼barrowc在上面的評論中建議。

不要浪費時間尋找解決方案來修復現有的工作簿。除非您可以編寫P代碼清理程序,否則創建新的工作簿是最快的解決方法。

+0

我剛試過這個,不幸的是它沒有工作。同樣的問題。我甚至嘗試過拖拽並只選擇可見對象,將它們複製,粘貼成全新的工作手冊中的全新形式,而且我仍然遇到同樣的問題。在這一點上,我誠實地考慮放棄和與無用物體一起生活。不過,如果我這樣做,它將永遠生活在我的皮膚下。 –

相關問題