2016-11-04 11 views
0

多数のセルに配列式を挿入して、範囲内のセルを最初に丸めて合計する必要があります。しかし、その範囲は必ずしも同じではないので、変数の範囲を定義する行番号を取り込む必要があります。これは動作していないよう:excel vbaで可変行のセル範囲を合計するための配列数式を挿入

Set ssheet = ThisWorkbook.Sheets("1 to 50")  
With ssheet.Range(Cells(1, 8), Cells(3200, 8)) 
Set x = .Find("Rate", LookIn:=xlValues, Lookat:=xlWhole) 
tworow = x.Row 
Set y = .Find("Total=", LookIn:=xlValues, Lookat:=xlWhole) 
nextrow = y.Row 
End With 
l = tworow + 1 
m = nextrow - 1 
ssheet.Cells(nextrow, 9).FormulaArray = "=sum(round("I" & l & ":" & "I" &m,2))" 
End sub 

は、私は、このことにより、所望の範囲を選択することができます。

myrange = "I" & l & ":" & "I" & m 
Range(myrange).Select 

しかし、和式のコードは、「予想文の末尾を」アウトできます。助けてください。

+0

基本的に必要なのは、ArrayFormulaコードの行番号に変数を使用する方法です。 – Swopnil

+0

は、「charatcers with」をround内のビットに置き換えるようにしてください。 '' = sum(round( 'I'&l& ':'& 'I'&m、2)) "' – maxhob17

+0

@dani – Swopnil

答えて

0

文字列がどのように構成されているか、つまり文字通り何が表示されるべきかを並べ替える必要があります。これを試してください

ssheet.Cells(nextrow, 9).FormulaArray = "=sum(round(I" & l & ":I" & m & ",2))" 
+0

ありがとうございます@SJR、それは働いた。 – Swopnil

関連する問題