2012-04-11 258 views
2

裏面我有下面的代碼,來計算最大的單元格區域:在我的代碼的變量VBA-可變範圍,公式

Range("E3").Select 
ActiveCell.FormulaR1C1 = "=MAX(RC[-3]:R[50]C[-3])" 

我怎能取代50?

感謝您的幫助!

回答

6

您是否嘗試過這樣的:

Dim sVal as String 
sVal = "50" 
ActiveCell.FormulaR1C1 = "=MAX(RC[-3]:R[" & sVal & " ]C[-3])" 
+0

偉大的我忘記了&&。非常感謝您的快速回復! – user1115535 2012-04-11 01:48:40

0

事情是這樣的:

Dim somevar as Integer 
somevar = 50 
ActiveCell.FormulaR1C1 = "=MAX(RC[-3]:R[" + somevar + "]C[-3])" 
+3

雖然這會工作,用 '+' 來串聯字符串是不推薦。 &運算符建議用於字符串連接,因爲它是專門爲字符串定義的,並降低了產生意外轉換的機會。 – andydev 2012-04-11 01:50:09

+0

同意。我同時使用這兩種方法,但我也注意到這些意外轉換可能會導致問題。 – Marc 2012-04-11 01:56:15