热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Excel2010,VBA和ListObjects小计不更新表更改

如何解决《Excel2010,VBA和ListObjects小计不更新表更改》经验,求大佬解答?

所以,有这个结构(从A1开始 - 显示片段>运行):

table {
  border-color: #BBB;
  border-width: 0px 0px 1px 1px;
  border-style: dotted;
}
body {
  font: 12px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
  color: #333;
}
td {
  border-color: #BBB;
  border-width: 1px 1px 0px 0px;
  border-style: dotted;
  padding: 3px;
}
A B C D
1 Title 1 Title 2 Title 3 Title 4
2 GH 1 434 4
3 TH 3 435 5
4 TH 4 4 6
5 LH 2 0 3
6 EH 2 5 36

我编写了一些代码来在ListObject中转换该范围(A1:D6),添加了4个新列和小计:

Function test()

    Dim objLO As ListObject

    Set objLO = ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$D$6"), , xlYes)
    objLO.Name = "Recap"
    objLO.TableStyle = "TableStyleMedium2"

    objLO.ListColumns.Add (objLO.ListColumns.Count + 1)
    objLO.HeaderRowRange(objLO.ListColumns.Count) = "Tot1"
    objLO.ListColumns.Add (objLO.ListColumns.Count + 1)
    objLO.HeaderRowRange(objLO.ListColumns.Count) = "Tot2"
    objLO.ListColumns.Add (objLO.ListColumns.Count + 1)
    objLO.HeaderRowRange(objLO.ListColumns.Count) = "Tot3"
    objLO.ListColumns.Add (objLO.ListColumns.Count + 1)
    objLO.HeaderRowRange(objLO.ListColumns.Count) = "Tot4"

    objLO.ShowTotals = True

    objLO.ListColumns("Tot1").TotalsCalculation = xlTotalsCalculationSum
    objLO.ListColumns("Tot2").TotalsCalculation = xlTotalsCalculationSum
    objLO.ListColumns("Tot3").TotalsCalculation = xlTotalsCalculationSum
    objLO.ListColumns("Tot4").TotalsCalculation = xlTotalsCalculationSum

End Function

现在,如果你继续新列的任何单元格并写一些数字,奇怪的是TOTAL(小计)不会更新; 但是如果您保存文件并重新打开它,它将起作用,总计将更新.我错过了什么?

我已经尝试在TotalCalculation之后移动ShowTotals但行为保持不变.

如果我们现在从头开始重建工作表,并在应用前一代码中的样式后为列b,c和d添加这段代码:

objLO.ListColumns("b").TotalsCalculation = xlTotalsCalculationSum
objLO.ListColumns("c").TotalsCalculation = xlTotalsCalculationSum
objLO.ListColumns("d").TotalsCalculation = xlTotalsCalculationSum  

我注意到b,c和d的小计正在工作但不适用于Tot1,Tot2等.

似乎唯一的解决方法是在添加带有用于创建它的引用的ListObject之前构造原始表.谁知道更好的解决方案?

提前致谢 :)


推荐阅读
author-avatar
jack2502937407
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有