返回列表 上一主題 發帖

如何在指定的定義名稱內指定範圍加總呢?

如何在指定的定義名稱內指定範圍加總呢?

各位大大好:
   在颱風期問,祝福大家都能平安順心。
   小弟有一問題想請問在一工作表內指定了定義名稱為: mySum
其定義名稱範圍: range("a1:b8")
設有
a1:a8內容為: 名稱,a,b,c,d,e,f,g
b1:b8內容為: 數量,10,20,30,40,50,60,70

現要在指定的b9欄位加總b2:b8

請問其二種語法為何呢?
  
語法如下:

Sub aa()
   
    Dim mSht As Worksheet
    Dim mRng As Range
    Dim mRng1 As Range
    Dim mRng2 As Range
   
    Set mSht = Worksheets(1)
   
    With mSht
        Set mRng = .Range("b9")
        Set mRng1 = Range("mysum").Cells(2, 2)
        'MsgBox mRng1.Address
        
        Set mRng2 = Range("mysum").Cells(8, 2)
        'MsgBox mRng2.Address
        
        
        'mRng.Formula = "=sum(mrng1 &":"& mrng2)"   '第一種語法
        'mRng.Formula= "sum(range("mysum").cells(2,2) &":"& range("mysum").cells(8,2))  '第二種語法        
    End With        
        
End Sub

感謝各位大大。

謝謝各位版主大大。

小弟真是受益良多。

TOP

SUM函數會避開文字
[B9] = "=SUM(mysum)"
學海無涯_不恥下問

TOP

一開始也想這樣簡單些,不過樓主兩個語法都是在儲存格寫入公式,才改成公式。

TOP

再提供一個語法:
   = "=Sum(" & Application.Index([MySum], , 2).Address & ")"
oobird 發表於 2010-9-20 15:30

樓主說過: 小弟有一問題想請問在一工作表內指定了定義名稱為: mySum
可直接用工作表公式 [b9] = [Sum(Index(MySum, , 2))]

TOP

謝謝各位大大。

小弟會好好研究並加應用。
感恩各位大大!

TOP

再提供一個語法:
  [b9] = "=Sum(" & Application.Index([MySum], , 2).Address & ")"

TOP

回復 3# dechiuan999
  1. Sub Ex()
  2.     Dim MySum As String
  3.     MySum = "a1:b8"
  4.     With Range(MySum).Columns(2)
  5.         .Cells(.Rows.Count + 1) = Application.Sum(.Offset(1).Resize(.Rows.Count - 1))
  6.     End With
  7. End Sub
複製代碼

TOP

With Range("mySum").Columns(2)
    [b9] = Application.Sum(.Value) - .Cells(1, 1)
End With
With Range("mySum").Columns(2)
    [b10] = Application.Sum(.Cells(2, 1).Resize(.Rows.Count - 1, 1))
End With

TOP

謝謝版主大大。

小弟引用大大的語法已達成須求。
目前尚在研究是否有其他語法可適用呢。

感恩版主大大!

TOP

        靜思自在 : 做好事不能少我一人,做壞事不能多我一人。
返回列表 上一主題