如何在Excel中对0.12.5与0.4.18分段数字求和得到0.16.23格式结果
Excel 点分隔多段数字逐段求和操作指南
你提到的这类特殊数字遵循「按点拆分后对应位置分别相加、无进位规则」,按示例0.12.5 + 0.4.18 = 0.16.23,对应三段计算逻辑为:第一段0+0=0,第二段12+4=16,第三段5+18=23,最后拼接为点分隔格式即可,具体操作有两种可选方案:
方案1:内置公式法(无需开启宏,适合临时使用)
假设待相加的两个数值分别存储在A1单元格(值为0.12.5)和B1单元格(值为0.4.18),直接在目标输出单元格粘贴对应公式即可:
- 适用于Excel 365/2021及以上版本(支持
TEXTBEFORE/TEXTAFTER函数):
=TEXTBEFORE(A1,".",1)+TEXTBEFORE(B1,".",1)&"."&TEXTAFTER(TEXTBEFORE(A1,".",2),".")+TEXTAFTER(TEXTBEFORE(B1,".",2),".")&"."&TEXTAFTER(A1,".",2)+TEXTAFTER(B1,".",2)
- 适用于Excel 2019及更早版本:
=LEFT(A1,FIND(".",A1)-1)+LEFT(B1,FIND(".",B1)-1)&"."&MID(A1,FIND(".",A1)+1,FIND(".",A1,FIND(".",A1)+1)-FIND(".",A1)-1)+MID(B1,FIND(".",B1)+1,FIND(".",B1,FIND(".",B1)+1)-FIND(".",B1)-1)&"."&RIGHT(A1,LEN(A1)-FIND(".",A1,FIND(".",A1)+1))+RIGHT(B1,LEN(B1)-FIND(".",B1,FIND(".",B1)+1))
方案2:VBA自定义函数法(适合大量数据批量处理)
如果需要频繁处理同类求和需求,可自定义函数简化操作:
- 按
Alt+F11打开VBA编辑器,依次点击「插入」-「模块」 - 在弹出的代码编辑窗口粘贴以下内容:
Function SumSegNum(num1 As String, num2 As String) As String Dim seg1, seg2, resSeg(1 To 3) As Integer seg1 = Split(num1, ".") seg2 = Split(num2, ".") For i = 0 To 2 resSeg(i + 1) = CInt(seg1(i)) + CInt(seg2(i)) Next SumSegNum = resSeg(1) & "." & resSeg(2) & "." & resSeg(3) End Function
- 将文件保存为「Excel 启用宏的工作簿(.xlsm)」格式
- 返回工作表后,直接在目标单元格输入
=SumSegNum(A1,B1)即可得到求和结果
内容的提问来源于stack exchange,提问作者Sudharsan
相关产品推荐
相关产品推荐

