返回列表 上一主題 發帖

[發問] 欄位(值)相加

[發問] 欄位(值)相加

小弟想請問一下

附件中
A6至H14為一月份的支出及收入
2012/1/1        說明           2012/1/10            說明        2012/1/20        說明            2012/1/30           說明
     13                支出                    1                    收入                4                支出                     2                   收入
      4                支出                    4                    收入                                                              2                   支出
      5                收入                    3                    支出                4                收入                        
      3                收入                    4                    收入                                                              2                   收入
      4                支出                    3                    收入                3                支出               
      3                收入                    4                    支出                                                              8                   支出
      5                收入                    4                    收入                2                收入                     5                   收入
      6                收入                    4                    收入                2                支出

當按鈕按下後
變會將所有欄位的收入及支出做總和加到當月第一天( 不管收入支出都相加) 然後說明欄空白
也就是變成

2012/1/1        說明
     20       
     10            
     12       
      9         
     10         
     15       
     16       
     12       

想請問一下
可否用
Selection.Delete Shift:=xlToLeft  的方式
邊將存儲格往左移
然後邊將數字做總和
因為後面可能還會有二月三月份等等  所以欄位是不固定的
所以想請教一下各位高手的作法 麻煩指教了>"<

PS : 附件的總和弄在SHEET2看起來比較容易看
       實際上都是在SHEET1完成加總的動作

新增Microsoft Excel 工作表.rar (1.93 KB)

WOW

回復 1# g93353
  1. Sub nn()
  2. Dim Ar(), A As Range
  3. For Each A In Range([A6], [A6].End(xlDown))
  4.    If IsDate(A) Then
  5.    ReDim Preserve Ar(s)
  6.    Ar(s) = Array(A.Value, "說明")
  7.    s = s + 1
  8.    Else
  9.    ReDim Preserve Ar(s)
  10.    x = Application.Sum(A.EntireRow)
  11.    Ar(s) = Array(x, "")
  12.    s = s + 1
  13.    End If
  14. Next
  15. Range("A6").CurrentRegion = ""
  16. [A6].Resize(s, 2) = Application.Transpose(Application.Transpose(Ar))
  17. End Sub
複製代碼
學海無涯_不恥下問

TOP

謝謝版主!!!! 趕快來研究一下!!!!
WOW

TOP

        靜思自在 : 是非當教育,讚美作警惕。
返回列表 上一主題