|
楼主 |
发表于 2011-3-14 17:03
|
显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
原帖由 gongjiangj 于 2011-3-14 13:08 发表
楼主,在“年度统计表”中的全年一列后面可否再添加一列平均值啊?
========================
【2011.3.20插入】:
2.3.4版本在图表中心提供了复选框,供用户自行决定是否在报表中列出月均收支金额。
========================
这个很方便加入,我回头给你看一下,把代码发在这一楼,未来的版本更新会考虑加入这一统计功能。
谢谢GJ!
========================
把这些代码加入到模块 “图表02年度收支表” 的
“Sub PayErn_GenerateData(AppYear As Integer, AppCurr As String, ShowZroBal As Boolean)” 过程 的以下代码的前面:
“End With
Application.ScreenUpdating = True
End Sub”
========================
代码内容:
'每月平均收支金额的计算
FstRecR = 4
LstRecR = .[O1000].End(xlUp).Row
Dim Min_Date, Max_Date As Date
Min_Date = Format(WorksheetFunction.Min(EHF_02DtRec.Range("C:C")), "yyyy-m-d")
Max_Date = Format(WorksheetFunction.Max(EHF_02DtRec.Range("C:C")), "yyyy-m-d")
'确定统计年度的有效月份数量
If Year(Min_Date) = Year(Max_Date) Then
j = Month(Max_Date) - Month(Min_Date) + 1
Else
Select Case AppYear
Case Is = Year(Min_Date)
j = 13 - Month(Min_Date)
Case Is = Year(Max_Date)
j = Month(Max_Date)
Case Else
j = 12
End Select
End If
'设置格式
.Range("O3:O" & LstRecR).Copy
.Range("P3:P" & LstRecR).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
.[A4].Select
.Range("P3").Value = "每月平均"
'填入金额
For i = FstRecR To LstRecR
If Not (EHF_04CatgStg.Range("B:B").Find(.Cells(i, 2).Value) Is Nothing) Or _
Right(.Cells(i, 2).Value, 2) = "小计" Or _
Right(.Cells(i, 2).Value, 3) = "合计:" Then
.Cells(i, 16).Value = Round(.Cells(i, 15).Value / j, 2)
End If
Next i
========================
以上代码3.15日重新更新了。
[ 本帖最后由 Delphima 于 2011-3-20 08:07 编辑 ] |
|