Excel VBA插入的.table列未在计算机之间一致地汇总

时间:2015-12-03 19:01:22

标签: excel vba excel-vba

描述: 我有一个名为TblConsensus的.Table设置,包含2行,2列。下面还有另一个.Table,名为TblConsensusTotals,它只是一行,具有相同的列,它充当Totals行,但只是一个普通的.Table行。如果未输入数据,则表格显示为:

                   |      Col. 1     |  Col. 2 (segment #)    |
        Row Header:| Evaluator Name  |   1                    |
             Row 1:|                 |                        |
Diff. Table, row 1:| Subtotal        |  =SUM(TblConsensus[1]) |

此表位于受保护的工作表上,因为根据手动输入的数据,下面还有其他公式和UDF。因此,该表由4个按钮操作,这些按钮在末尾添加和删除列和行,为更多段和更多评估者提供空间。该代码如下:

    Set headerColumn = ActiveWorkbook.Worksheets("Raw Consensus").ListObjects("TblConsensus").ListColumns.Add
    Set headerColumn_total = ActiveWorkbook.Worksheets("Raw Consensus").ListObjects("TblConsensusTotals").ListColumns.Add

    colPosition = ActiveWorkbook.Worksheets("Raw Consensus").ListObjects("TblConsensusTotals").ListColumns.Count
    colPosition = colPosition - 1
    CellValue = "=SUM(TblConsensus[" & colPosition & "])"
    headerColumn_total.Range.Cells(1, 1).Value = CellValue

在此代码中,您会看到两个表都在末尾添加了一列,并且该列的位置减1被设置为colPosition。在Totals表中添加的单元格中,该值设置为一个公式,该公式是另一个表中正上方的列的总和。同样,这充当了Totals行。

主电脑(预期): 放入第2列(第1段)和随后添加的列的数据由下面总计表中相应列中的单元格正确求和。

笔记本电脑(已观察): 放入第2列(第1段)的数据由下面总计表中相应列中的单元格正确求和,但随后添加的列中的数据根本不会求和,除非(1)Ctrl + Alt + F9或(2)按下其中一个按钮即可操作该表。

- 是否添加或删除了行或任何数字无效

- 没有错误,没有#VALUE,没有自动计算

- 计算机和笔记本电脑都是Excel 2013

- 如果您编辑已添加列的公式并更改列,则它总和为1而不是列数

- 这有时不一致。如果我搞得一团糟,那么回到桌面并弄乱数据,它会自动重新计算,尽管代码没有任何变化。

首选帮助修复,但也非常感谢“为什么”。

感谢您的帮助!

编辑:这与我之前的问题不同, VBA result inconsist between computers - setting .value to formula

0 个答案:

没有答案