2016-07-25 12 views
0

私は、ある時点でいくつかのセルの合計にセルを設定するマクロを設定しようとしています。しかし、合計されるセルは可変であり、他のものに基づいています(マクロの各繰り返しで変更されます)。私は、セルが入っている行だけでなく、開始セルの列と終了セルの列(つまり、おそらくA600〜A606が合計される)を知るようにマクロをコーディングしました。しかし、これらの列と行の代入を変数Y、Xstart、Xendに設定しました。どのようにして、これらの範囲の合計を選択するには、セルの変数が純粋に変数によって定義されていますか?excelで変数に基づく範囲を参照していますか?

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

これは私の最初の推測でしたか?

答えて

3

使用セットオブジェクトへの参照を設定します。 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を変数にするかの答えが更新されました。ターゲット範囲のformulaプロパティに渡す文字列を構築することが主なものです。チェックマークありがとう! –

関連する問題