2011-10-03 105 views
1

對於一個草率的原因,我做了我的代碼命名爲「細胞」變量這樣使用VBA對象名稱作爲變量

Dim cells as Range 

但現在在我所有的模塊,在「細胞」對象有已被小寫變量「單元格」取代。如果我輸入的「細胞」,VBA編輯器會自動更換的「細胞」的文字。有沒有辦法來解決這個問題?

回答

5

解決這個問題的唯一辦法是重命名cellsCells

+1

+1 - 類似的問題在這裏有相同的解決方案:http://www.ozgrid.com/forum/showthread.php? T = 71829&頁= 1 – Reafidy

0

你也可以只查找和替換一次一個,這將是乏味的,但。

+0

都不行,編輯器會只要你在一個更'cells'類型更換它都回來了。 – GSerg

+0

嗯,這太糟糕了。 – Jon49

0

更大的問題是通常不合格使用Cells指的是活動工作表,因此返回包含該活動工作表上所有單元格(只要活動工作表是工作表)的範圍(即ActiveSheet.Cells)。

如果您自己的變量名爲cells在範圍內,那麼它將優先於全球使用Cells。既是指Range對象不會有任何語法錯誤 - 只是很難找到語義的。

我會將變量cells重命名爲完全不同的東西。之後,如果Excel仍然將Cells更改爲cells然後上面提供的鏈接reafidy中的建議應該有幫助