跳至主要内容

Kutools for Office — 一套工具,五种功能。事半功倍。

如何在Excel中正确对带有单位的数字求和?

Author Sun Last modified

在使用Excel时,您可能会遇到需要对包含单位的数字进行求和的情况,例如“5公斤”、“12磅”或“10米”。这种情况很常见,特别是在跟踪重量、长度或数量时——尤其是在采购清单、工程测量、实验室记录和物流数据中,每个数值后面都会附带一个计量单位。然而,如果您尝试对这些数据使用Excel的标准SUM公式,它将无法按预期工作。这是因为Excel会将包含文本(如单位)的值解释为文本字符串,而不是数值,这意味着SUM和其他基本数学函数会忽略它们或返回错误。准确地对这些值求和需要一种方法来提取数值部分,然后再进行计算。本教程将引导您了解几种实用且有效的方法,包括公式、内置功能以及像Kutools for Excel这样的便捷插件,帮助您在不同实际场景中正确对带有单位的数字求和。


使用公式对带有单位的数字求和

当所有值共享相同的单位,并且您需要一个快速的基于公式的解决方案时,Excel数组公式可以帮助提取数值部分并计算总和。此方法适用于每个单元格都包含一个紧接相同单位的数字的范围,例如“8公斤”、“15公斤”等。

选择一个空白单元格作为结果,并输入以下公式:

=SUM(SUBSTITUTE(B2:B7, "kg", "") +0)

输入公式后,通过同时按下Ctrl + Shift + Enter确认(在某些系统上,这是数组公式的要求),以便Excel将其识别为数组操作。然后,您将在所选单元格中看到数值部分的总和。

A screenshot showing the formula for summing numbers with units in Excel
Arrow
A screenshot of the correct summed result of numbers with units

提示:在上述公式中,B2:B7指的是包含要加总值的数据区域,“kg”是您的数据中的单位。确保该范围内的所有条目在单位上是一致的,并且没有多余的空格或拼写差异,否则公式将无法正确提取值。如果您的单位或范围不同,请相应调整两者。此公式不处理范围内存在多种类型单位的场景。


使用Kutools for Excel对带有单位的数字求和

对于喜欢更简单、更直观方法或想避免记忆公式的用户,Kutools for Excel提供了一种直接清理数值的方法。其删除字符功能可以轻松去除非数值单位,使您可以直接对数字求和。这非常适合您的数据在一个列中包含数字和单位并且需要快速使数字可用于计算的情况。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

1. 突出显示包含带有单位的数字的单元格。转到Kutools选项卡,点击文本,然后选择删除特定字符。见截图:

A screenshot of the Remove Characters option in Kutools tab in Excel

2. 在删除特定字符对话框中,仅选择非数字选项。此设置将删除所有非数字字符。见截图:

A screenshot showing the Remove Characters dialog box

3. 单击确定应用。现在,只有数字内容保留在所选单元格中,您可以使用简单的公式对其进行求和。选择一个空白单元格并输入以下公式以获取结果:

=SUM(B2:B7)

下图显示了按照此过程清理后的列和求和结果。

A screenshot showing the cleaned numeric values after using Kutools
Arrow
A screenshot of the final summed result in Excel

Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取

注意:Kutools会在所选单元格中直接替换,因此如果需要保留原始文本,您可能希望在数据副本上工作。此解决方案最适合单一类型的单位。使用此功能后,确保所有清理后的值均为数字后再进行求和。

使用Kutools for Excel和SUM函数根据相同单位对数字求和

 
Kutools for Excel:超过 300 种实用工具触手可及!永久免费享受 AI 功能!立即下载!

使用Kutools for Excel根据相同单位对数字求和

如果您的表格包含具有不同单位的值——例如,以“千克”和“磅”为单位的重量——并且您希望分别对每个单位求和(例如,获取总千克数和总磅数),Kutools通过其公式助手功能提供了高效的方法。这对于汇总表、库存报告或准备进一步比较的数据非常有用。

A table with numbers and different units like Kg and Pound

Kutools for Excel - 包含超过 300 个 Excel 必备工具。永久免费享受 AI 功能!立即下载!

1. 选择您希望显示求和结果的单元格。导航至Kutools > 公式助手 > 统计 > 基于相同文本求和

A screenshot of the Formula Helper tool for summing based on text in Kutools tab in Excel

2. 在公式助手中对话窗口中,设置您的计算:在参数输入下,选择完整数据范围作为您的区域,并在文本框中键入或选择特定单位(例如“千克”或“磅”)。然后单击确定

A screenshot of the Arguments input section for summing based on unit

提示:默认公式使用绝对引用(例如$B$2:$B$7)。如果您计划为此函数自动填充多个单位或行,请根据需要手动将引用更改为相对引用。

现在,您的结果单元格显示所选单位的总计。对每个单位重复此操作以获得所有组的总计。

A screenshot of the final result showing summed values for each unit in Excel

注意:此方法适用于具有明确标记单位类型的数据表,并有助于自动化多单位求和,减少手动分组的错误。


使用Kutools for Excel合并重复行并对相应数字求和

一些数据集包含多次列出的项目或实体及其相关数量和单位,例如带有不同重量单位的水果。假设您希望按项目和单位对值进行求和,合并重复行并汇总总数。Kutools for Excel的高级合并行功能专为此类场景设计,使聚合快速简便。

A table containing fruits with weights and multiple units in Excel

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

1. 选择包含重复项和混合单位的表格,然后转到Kutools > 合并与拆分 > 高级合并行

A screenshot of the Advanced Combine Rows option in Kutools tab in Excel

2. 在基于列合并行对话框中,首先选择包含单位的列并将其标记为键。这使得Kutools能够按单位对您的数据进行分组。见截图:

A screenshot of the Combine Rows Based on Column dialog showing the primary key option

3. 接下来,突出显示包含数值的列(如“重量”),然后选择计算并选择求和以将每个组的值相加。

A screenshot showing the Calculate Sum option

4. 单击确定,您的表格将按单位汇总,按要求合并数字。这在需要按匹配单位聚合多个条目的库存和销售数据中特别有用。

A screenshot of the final table with summed numbers grouped by units

Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取

提示:您可以按多个键(例如项目和单位)进行分组,以实现更深层次的整合。

合并重复项并求数字之和

 
Kutools for Excel:超过 300 种实用工具触手可及!永久免费享受 AI 功能!立即下载!

VBA宏:从带有单位的文本字符串中提取数字并自动求和

对于寻求完全自动化或处理复杂或多样模式的单位字符串的高级用户,VBA宏可以一次性处理提取和求和。此方法在您的范围包含跟随不同单位的数字或数据结构不一致时特别有帮助,并且当内置Excel公式过于限制或繁琐而无法针对每种情况进行调整时尤为适用。

1. 通过单击开发工具 > Visual Basic打开VBA编辑器。在Microsoft Visual Basic for Applications窗口中,单击插入 > 模块,然后将以下代码粘贴到模块中:

Sub SumNumbersWithUnits()
    Dim cell As Range
    Dim WorkRng As Range
    Dim xTitleId As String
    Dim NumSum As Double
    Dim NumStr As String
    Dim i As Long
    Dim ch As String
    
    On Error Resume Next
    xTitleId = "Kutools for Excel"
    
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Select the range with numbers and units", xTitleId, WorkRng.Address, Type:=8)
    
    NumSum = 0
    
    For Each cell In WorkRng
        NumStr = ""
        
        For i = 1 To Len(cell.Value)
            ch = Mid(cell.Value, i, 1)
            
            If ch Like "[0-9.]" Then
                NumStr = NumStr & ch
            ElseIf Len(NumStr) > 0 Then
                Exit For
            End If
        Next i
        
        If IsNumeric(NumStr) Then
            NumSum = NumSum + Val(NumStr)
        End If
    Next cell
    
    MsgBox "Sum of numbers is: " & NumSum, vbInformation, "Kutools for Excel"
End Sub

2. 要运行代码,请在宏中任意位置单击并按 F5,或单击 Run button 代码编辑器窗口上方的运行按钮。将出现一个对话框,要求您选择包含带有单位的数字的范围。脚本将自动从每个文本单元格中提取前导数值并将所有结果相加,然后在弹出框中显示总和。

提示和使用说明:

  • 此宏从每个字符串的开头提取数字字符,直到找到非数字字符为止,这意味着它可以处理大多数格式,如“5kg”、“12磅”或“20.5米”。
  • 如果数字的格式不一致或嵌入在字符串中,则可能需要进一步定制。
  • 您可以修改VBA代码以单独收集或处理单位(如果需要)。
  • 为避免丢失原始数据,始终在工作表的副本或备份上使用宏。
  • 要求在您的Excel设置中启用宏功能。

此VBA解决方案在处理数据变化时非常灵活,并且在应用于大型数据集时可以节省大量时间。

使用Power Query提取并求和带有单位的数字

Power Query是Excel内置的数据转换工具,非常适合处理包含带有单位数字的较大或更复杂的数据集。
当数据结构不一致或需要自动化重复任务时,它尤其有效。

1. 选择包含您的数据(包括带有单位的数字)的范围,然后转到数据选项卡并单击来自表格/范围。如果出现提示,请确保您的数据有标题。

2. 在Power Query编辑器中,选择包含文本值的列。使用 添加列 选项卡 > 提取 > 分隔符前的文本分隔符之间的文本.
根据您的数据格式进行选择:

  • 如果数据类似于“12 kg”,请使用空格分隔符
  • 如果数据是“12kg”,请使用基于字母的分隔符

3. 根据需要通过右键单击其标题并选择更改类型,将新列的数据类型更改为小数整数

4. (可选)如果您希望按单位求和,进一步通过提取分隔符后的文本分割单位,然后在主页选项卡上选择分组依据,并为新的数值字段选择求和

5. 单击关闭并加载以将处理后的数据和求和直接导入Excel作为新工作表或表格。

优点:

  • 干净快速地处理复杂、不一致或批量数据。
  • 步骤可以保存并重新应用于未来的或更新的数据——使这种方法高度可重复。
  • 您可以自定义转换逻辑,超越简单的提取,包括处理前缀、后缀、小数和按不同单位分组。

局限性:

  • 对于Power Query的新用户来说有一个学习曲线。
  • 最好应用于结构化数据或在处理表格时使用,而不是直接的即兴单元格条目。

故障排除和建议:

  • 为了获得最佳结果,始终检查提取或转换后的数字是否存在异常,特别是如果单位或数字的格式变化很大。
  • 在任何批量操作之前备份您的源数据(包括使用Kutools和VBA)。
  • 使用公式时,请仔细检查数据和单位中的隐藏空格或拼写错误。
  • 如果公式失败或返回错误(如#VALUE!),请验证所有引用的单元格是否包含预期格式,并相应调整范围或单位标准。
  • 使用VBA时,请确保启用了宏,并在运行前保存以便更容易恢复。
  • 如果您的数据已更改,可以通过应用步骤窗格在预览后调整Power Query转换步骤。

相关文章:

最佳Office办公效率工具

🤖 Kutools AI 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数……
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入……
高级LOOKUP多条件VLookup|多值VLookup|多表查找|模糊查找……
高级下拉列表快速创建下拉列表 |依赖下拉列表 | 多选下拉列表……
列管理器添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域与列……
特色功能网格聚焦 |设计视图 | 增强编辑栏 | 工作簿及工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按名单发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/倾斜/删除线等)……
15大工具集12项 文本工具添加文本删除特定字符等)|50+种 图表 类型甘特图等)|40+实用 公式基于生日计算年龄等)|19项 插入工具插入二维码从路径插入图片等)|12项 转换工具小写金额转大写汇率转换等)|7项 合并与分割工具高级合并行分割单元格等)| ……
Kutools支持多种语言——可选择英语、西班牙语、德语、法语、中文等40多种语言!

通过Kutools for Excel提升您的Excel技能,体验前所未有的高效办公。 Kutools for Excel提供300多项高级功能,助您提升效率并节省时间。 点击此处获取您最需要的功能……


Office Tab为Office带来多标签界面,让您的工作更加轻松

  • 支持在Word、Excel、PowerPoint中进行多标签编辑与阅读
  • 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
  • 可提升50%的工作效率,每天为您减少数百次鼠标点击!

所有Kutools加载项,一键安装

Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。

Excel Word Outlook Tabs PowerPoint
  • 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
  • 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
  • 协同更高效——提升Office应用间的整体工作效率
  • 30天全功能试用——无需注册,无需信用卡
  • 超高性价比——比单独购买更实惠