2012-05-12 12 views
2

我已經爲範圍創建了全局字符串常量。使用單行代碼清除一系列範圍

Global Const Graph_Cl As String = "G2:G13" 
Global Const Graph_Vl As String = "I2:I13" 
Global Const Graph_VlS As String = "L2:L13" 

我想用一行代碼清除這些範圍。

With wkDataToUse 
    .Range(Graph_Cl, Graph_Vl, Graph_VlS).ClearContents 
End With 

,但我得到的錯誤:

"Wrong no of arguments or invalid property assignment!" 

我甚至試過這樣:

With wkDataToUse 
    .Range(Array(Graph_Cl, Graph_Vl, Graph_VlS)).ClearContents 
End With 

OR

With wkDataToUse 
    .Range([{Graph_Cl, Graph_Vl, Graph_VlS}]).ClearContents 
End With 

如何清除所有範圍中的一行碼?

+0

歡迎使用計算器。你應該閱讀[this](http://meta.stackexchange.com/a/5235/164088)。 –

回答

4

要傳遞多個範圍地址,您需要使用逗號分隔的字符串格式:"a:b,c:d,e:f"所以您可以;

.Range(Graph_Cl & "," & Graph_Vl & "," & Graph_VlS).ClearContents 

你也可以;

Union(.Range(Graph_Cl), .Range(Graph_Vl), .Range(Graph_VlS)).ClearContents