2016-07-25 132 views
0

我想設置一個宏,在某些時候,最終將設置一個單元格爲幾個單元格的總和。然而,將被求和的單元是可變的,並且基於其他事物(並且將在每次迭代中改變)。我已經編寫了宏,這樣我就可以知道單元格所在的行,以及開始單元格的列和結束單元格的列(即可能將A600到A606相加)。但是,我已將這些列和行分配設置爲變量,例如Y,Xstart和Xend。我如何選擇這些範圍,單元格是由變量純粹定義的?引用基於excel變量的範圍?

set rng = "=SUM(& Y & Xstart &, & Y & Xend &)" 

這是我最初的猜測嗎?

回答

3

設置對對象的引用時使用set。 Range.Formaula需要一個字符串參數,「= Sum()」也是。

Sub Example() 

    Dim Xstart As Long, Xend As Long 
    Dim TargetRange As Range, SumRange As Range 
    Dim Y as string 
    Y = "B" 

    Xstart = 2 
    Xend = 100 

    Set SumRange = Range(" & Y & & Xstart & ":" & Y & Xend) 
    Set TargetRange = Range("A1") 

    TargetRange.Formula = "=SUM(" & SumRange.Address & ")" 

End Sub 
+0

什麼是Y雖然是一個變量?不提及專欄。 –

+0

如果Y是* –

+0

那我該如何更新我的答案,使Y成爲一個變量。我們正在構建一個字符串以傳入目標區域的公式屬性。感謝您的複選標記! – 2016-07-25 19:09:25