是否可以自动将新工作表中的单元格添加到 Excel 中的公式中?

是否可以自动将新工作表中的单元格添加到 Excel 中的公式中?

我想制作一个新的财务电子表格来跟踪费用。由于费用表是按时创建的,我无法预先生成电子表格来填充公式。我有一张汇总表,它从其他工作表中添加了总计,目前在月底手动创建了一个公式。有没有办法自动对多张工作表求和,并在创建新工作表时将新工作表添加到总和中?

使用标准 Excel 可以实现这一点吗?或者我是否需要使用一些 VBA?

我已经知道如何在多张工作表中添加相同的单元格(参见:Excel - 计算多张工作表总计的公式?

这个 vba 脚本是我想要做的事情的一部分,但不是我想要做的:Excel - 创建新选项卡时自动从单元格导入数据

PS:我不懂 VBA,但愿意学习。我习惯使用 C/Python。

答案1

举例来说,您有累计总数Sheet1!A1。好的,现在您可以创建一个可以运行的宏,它将获取其他工作表中的所有总数并将它们相加。

假设每张表的总计位于单元格A10-

Sub updatethesum()
Dim ws As Worksheet
    Dim i As Double
    i = 0
For Each ws In ThisWorkbook.Worksheets

    If ws.Name <> "Sheet1" Then
        i = i + ws.Range("A10")
    End If

Next
Sheets("Sheet1").Range("A1") = i
End Sub

如果你担心有人会输入字母而不是数字,A10你可以用以下方法限制输入 -

Sub updatethesum()

Dim ws As Worksheet
    Dim i As Double
    i = 0
    Dim bletter As Boolean

For Each ws In ThisWorkbook.Worksheets

    If ws.Name <> "Sheet1" Then
        bletter = IsNumeric(ws.Range("A10").Value)
            If bletter = True Then
             i = i + ws.Range("A10")
            End If
    End If

Next
Sheets("Sheet1").Range("A1") = i
End Sub

相关内容