返回列表 上一主題 發帖

[發問] VBA加總問題

本帖最後由 GBKEE 於 2010-12-14 20:36 編輯

回復 1# sandra_wang
  1. Sub Ex()
  2.     Dim Rng As Range, s1, s2, i
  3.     With ActiveSheet
  4.         Set Rng = .Range("i1", .Range("iv1").End(xlToLeft))
  5.         s1 = Rng.Address(, , xlR1C1)
  6.         For i = 2 To .Range("i" & Rows.Count).End(xlUp).Row
  7.             s2 = Rng.Offset(i - 1).Address(, , xlR1C1)
  8.             .Cells(i, "b").FormulaArray = "=SUM((" & s1 & "<>"""")*(" & s2 & "))"
  9.         Next
  10.     End With
  11. End Sub
複製代碼

TOP

回復 8# frankjenq
節錄 vba的說明   FormulaArray  該公式必須使用 R1C1 參照樣式,而無法使用 A1 參照樣式
所以
s1 = Rng.Address(, , xlR1C1)
s2 = Rng.Offset(i - 1).Address(, , xlR1C1)
傳回R1C1 參照樣式  帶入公式中 "=SUM((" & s1 & "<>"""")*(" & s2 & "))"

TOP

        靜思自在 : 【是否發揮了良能?】人間壽命因為短暫,才更顯得珍貴。難得來一趟人間,應問是否為人間發揮了自己的良能,而不要一味求長壽。
返回列表 上一主題