有没有什么方法可以计算整个 Excel 表中数字的总和?

有没有什么方法可以计算整个 Excel 表中数字的总和?

我正在尝试设置一个可持续预算 Excel 工作簿,我可以轻松设置工作表,以命名我想要在摘要中使用的不同类别。这个想法是将收据中的项目添加到不同的工作表中,并归入其特定类别。我希望能够有一个公式来分隔日期和工作表中的文本,以便只获取该工作表中数字的总和。有没有一种简单的方法来设置 isnumber 公式以排除日期?

答案1

考虑以下UDF()

Public Function SuperSum(shName As String) As Variant
   Application.Volatile
   Dim sh As Worksheet, r As Range, v As Variant
   Set sh = Sheets(shName)
   For Each r In sh.UsedRange
      v = r.Value
      If IsNumeric(v) And Not IsDate(v) Then
         SuperSum = SuperSum + v
      End If
   Next r
End Function

用户定义函数 (UDF) 非常容易安装和使用:

  1. ALT-F11 打开 VBE 窗口
  2. ALT-I ALT-M 打开新模块
  3. 粘贴内容并关闭 VBE 窗口

如果您保存工作簿,UDF 将随之保存。如果您使用的是 2003 之后的 Excel 版本,则必须将文件保存为 .xlsm 而不是 .xlsx

要删除 UDF:

  1. 调出如上所示的 VBE 窗口
  2. 清除代码
  3. 关闭 VBE 窗口

要从 Excel 使用 UDF:

=SuperSum("Sheet2")

要了解有关宏的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

有关 UDF 的详细信息,请参阅:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

必须启用宏才能使其工作!

相关内容