2013-08-29 103 views
1

基本上我需要在vba的excel表單上選擇特定的單元格。例如,代碼應該能夠選擇a5,a10,a15。我不希望他們之間的細胞,只是我列出的細胞。有沒有一個特定的功能可以做到這一點?看起來像。範圍只能採取開始單元格和結束單元格。如何選擇VBA中的特定單元格?

回答

5

你會使用這個:Range("A5,A10,A15").Select

要添加額外的電池,只要使用多個逗號。

或者,您可以利用Union method將多個範圍對象連接到一個Range對象中。

請注意,選擇VBA中的單元通常不是一個好主意,因爲幾乎所有事情都可以在沒有選擇的情況下完成。由於生成的宏(Record Macro)重新創建了你所做的事情而不是你想要的結果,所以這是VBA新手所犯的一個常見錯誤。

+1

嗨,謝謝你的快速回復。看來我很喜歡這樣做。我面臨的問題是,當我連接多個單元格到一個字符串變量(mycells)並在Range(mycells)中使用它。選擇,宏給我一個錯誤,我相信它必須處理字符串能夠處理只有255個字符。 – gvar

+2

這是正確的。在這種情況下,請使用Union。例如,你可以做這樣的事情:'Union(Range(_ 「A23,A29,A34,B35,C38,C33,B32,B31,C31,K36,I31,L25,J26,H28,G35,E38, (「A5,A7,B6,B5,C5,C4,C7,F32,F27,F21,C17,C15,C10,A11,F18,E19,I19,J19,J15,I13,M13,A1,A3」 ,C13,B13,B18,C21,H22,H11,L16,E30,C28,C24,E25,E15,E10,F14,H16,J11,H5,G6,F6,E3,D8,A13,A19" ))。選擇' –

+1

@DanielCook除非某些行爲已經改變,我不知道,自從Excel VBA誕生以來,Union方法已經可用了嗎? –

相關問題