Excel 高级数学函数 #

函数概览 #

高级数学函数提供了更精确的计算能力,包括四舍五入、取余、绝对值、幂运算等功能。

text
┌─────────────────────────────────────────────────────────────┐
│                    高级数学函数一览                          │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ROUND     四舍五入    =ROUND(3.14159, 2)                   │
│  ROUNDUP   向上舍入    =ROUNDUP(3.14, 1)                    │
│  ROUNDDOWN 向下舍入    =ROUNDDOWN(3.19, 1)                  │
│  INT       取整        =INT(3.9)                            │
│  TRUNC     截断        =TRUNC(3.9)                          │
│  MOD       取余        =MOD(10, 3)                          │
│  ABS       绝对值      =ABS(-5)                             │
│  POWER     幂运算      =POWER(2, 3)                         │
│  SQRT      平方根      =SQRT(16)                            │
│  SIGN      符号        =SIGN(-5)                            │
│                                                             │
└─────────────────────────────────────────────────────────────┘

ROUND 函数系列 #

ROUND 函数 #

excel
=ROUND(number, num_digits)

参数:
- number: 要四舍五入的数值
- num_digits: 保留的小数位数
  - 正数:小数点后位数
  - 0:取整
  - 负数:小数点前位数

基本用法 #

excel
=ROUND(3.14159, 2)     → 3.14    保留2位小数
=ROUND(3.14159, 0)     → 3       取整
=ROUND(3.5, 0)         → 4       四舍五入
=ROUND(1234, -2)       → 1200    舍入到百位
=ROUND(1250, -2)       → 1300    舍入到百位

ROUNDUP 函数 #

excel
=ROUNDUP(number, num_digits)

始终向上舍入(远离零的方向)
excel
=ROUNDUP(3.14, 1)      → 3.2     向上舍入1位小数
=ROUNDUP(3.11, 1)      → 3.2     即使很小也向上
=ROUNDUP(-3.14, 1)     → -3.2    负数也向上(远离零)
=ROUNDUP(1234, -2)     → 1300    向上舍入到百位

ROUNDDOWN 函数 #

excel
=ROUNDDOWN(number, num_digits)

始终向下舍入(朝向零的方向)
excel
=ROUNDDOWN(3.19, 1)    → 3.1     向下舍入1位小数
=ROUNDDOWN(3.99, 1)    → 3.9     即使很大也向下
=ROUNDDOWN(-3.19, 1)   → -3.1    负数也向下(朝向零)
=ROUNDDOWN(1299, -2)   → 1200    向下舍入到百位

三者对比 #

text
数值        ROUND      ROUNDUP    ROUNDDOWN
3.14159     3.14       3.15       3.14
3.145       3.15       3.15       3.14
3.144       3.14       3.15       3.14
-3.145      -3.15      -3.15      -3.14

实际应用 #

excel
价格舍入到分:
=ROUND(价格, 2)

舍入到元:
=ROUND(价格, 0)

舍入到角:
=ROUND(价格, 1)

向上舍入到整元:
=ROUNDUP(价格, 0)

舍入到千元:
=ROUND(金额, -3)

INT 和 TRUNC 函数 #

INT 函数 #

excel
=INT(number)

将数值向下取整到最接近的整数
excel
=INT(3.9)      → 3       向下取整
=INT(3.1)      → 3       向下取整
=INT(-3.1)     → -4      负数向下(更小)
=INT(-3.9)     → -4      负数向下(更小)

TRUNC 函数 #

excel
=TRUNC(number, [num_digits])

截断数值到指定的小数位数
excel
=TRUNC(3.9)       → 3     截断小数
=TRUNC(3.14159, 2) → 3.14  截断到2位
=TRUNC(-3.9)      → -3    负数截断
=TRUNC(-3.14159, 2) → -3.14

INT vs TRUNC #

text
数值        INT        TRUNC
3.9         3          3
3.1         3          3
-3.1        -4         -3
-3.9        -4         -3

区别:
- INT 始终向下取整
- TRUNC 直接截断(朝向零)

实际应用 #

excel
提取整数部分:
=TRUNC(A1)

提取小数部分:
=A1-TRUNC(A1)
=A1-INT(A1)  (仅适用于正数)

计算小时数:
=INT(时间*24)

计算分钟数:
=INT((时间*24-INT(时间*24))*60)

MOD 函数 #

语法 #

excel
=MOD(number, divisor)

参数:
- number: 被除数
- divisor: 除数

返回:余数

基本用法 #

excel
=MOD(10, 3)     → 1     10÷3=3余1
=MOD(9, 3)      → 0     9÷3=3余0
=MOD(7, 3)      → 1     7÷3=2余1
=MOD(-10, 3)    → 2     结果与除数同号
=MOD(10, -3)    → -2    结果与除数同号

实际应用 #

excel
判断奇偶数:
=IF(MOD(A1, 2)=0, "偶数", "奇数")

判断能否整除:
=IF(MOD(A1, B1)=0, "能整除", "不能整除")

每隔N行插入分隔:
=IF(MOD(ROW(), 5)=0, "---", "")

循环计数:
=MOD(ROW()-1, 4)+1  → 1,2,3,4,1,2,3,4...

计算剩余数量:
=MOD(总数, 每组数量)

案例:分组 #

text
数据:
    A          B
1   序号       分组
2   1         =MOD(A2-1, 3)+1  → 1
3   2         =MOD(A3-1, 3)+1  → 2
4   3         =MOD(A4-1, 3)+1  → 3
5   4         =MOD(A5-1, 3)+1  → 1
6   5         =MOD(A6-1, 3)+1  → 2

实现循环分组:1,2,3,1,2,3...

ABS 函数 #

语法 #

excel
=ABS(number)

返回数值的绝对值

基本用法 #

excel
=ABS(5)       → 5
=ABS(-5)      → 5
=ABS(0)       → 0
=ABS(-3.14)   → 3.14

实际应用 #

excel
计算差异(不考虑正负):
=ABS(A1-B1)

计算偏差率:
=ABS((实际-计划)/计划)

判断是否在范围内:
=IF(ABS(A1-B1)<=10, "在范围内", "超出范围")

计算绝对差之和:
=SUMPRODUCT(ABS(A1:A10-B1:B10))

案例:温度变化 #

text
数据:
    A          B          C
1   昨天       今天       变化
2   25         28         =ABS(A2-B2)  → 3
3   30         25         =ABS(A3-B3)  → 5
4   20         20         =ABS(A4-B4)  → 0

POWER 和 SQRT 函数 #

POWER 函数 #

excel
=POWER(number, power)

参数:
- number: 底数
- power: 指数

返回:底数的指数次幂
excel
=POWER(2, 3)      → 8      2的3次方
=POWER(10, 2)     → 100    10的平方
=POWER(5, 0)      → 1      任何数的0次方都是1
=POWER(4, 0.5)    → 2      4的平方根
=POWER(2, -1)     → 0.5    2的-1次方

使用 ^ 运算符:
=2^3              → 8
=10^2             → 100

SQRT 函数 #

excel
=SQRT(number)

返回数值的平方根
excel
=SQRT(16)      → 4
=SQRT(2)       → 1.414213562...
=SQRT(0)       → 0
=SQRT(-1)      → #NUM!  负数不能开平方

安全开方 #

excel
避免负数错误:
=IF(A1>=0, SQRT(A1), "无效")

或:
=SQRT(ABS(A1))  取绝对值后开方

实际应用 #

excel
计算圆面积:
=PI()*POWER(半径, 2)
=PI()*半径^2

计算圆半径:
=SQRT(面积/PI())

计算立方体体积:
=POWER(边长, 3)

计算勾股定理:
=SQRT(A^2+B^2)

SIGN 函数 #

语法 #

excel
=SIGN(number)

返回数值的符号:
- 正数 → 1
- 零 → 0
- 负数 → -1

基本用法 #

excel
=SIGN(10)      → 1
=SIGN(-10)     → -1
=SIGN(0)       → 0
=SIGN(3.14)    → 1

实际应用 #

excel
判断增减:
=SIGN(B1-A1)
正数表示增加,负数表示减少,零表示不变

显示趋势:
=CHOOSE(SIGN(B1-A1)+2, "下降", "持平", "上升")

其他数学函数 #

CEILING 和 FLOOR #

excel
=CEILING(number, significance)
向上舍入到指定基数的倍数

=FLOOR(number, significance)
向下舍入到指定基数的倍数
excel
=CEILING(3.2, 1)      → 4     向上舍入到整数
=CEILING(3.2, 0.5)    → 3.5   向上舍入到0.5的倍数
=CEILING(7, 3)        → 9     向上舍入到3的倍数

=FLOOR(3.8, 1)        → 3     向下舍入到整数
=FLOOR(3.8, 0.5)      → 3.5   向下舍入到0.5的倍数
=FLOOR(8, 3)          → 6     向下舍入到3的倍数

EVEN 和 ODD #

excel
=EVEN(number)    向上舍入到最接近的偶数
=ODD(number)     向上舍入到最接近的奇数
excel
=EVEN(3)         → 4
=EVEN(2)         → 2
=EVEN(-3)        → -4

=ODD(2)          → 3
=ODD(3)          → 3
=ODD(-2)         → -3

FACT 函数 #

excel
=FACT(number)

返回数值的阶乘
excel
=FACT(5)        → 120    5! = 5×4×3×2×1
=FACT(0)        → 1      0! = 1
=FACT(1)        → 1      1! = 1

RAND 和 RANDBETWEEN #

excel
=RAND()              返回 0 到 1 之间的随机数
=RANDBETWEEN(1, 100) 返回 1 到 100 之间的随机整数
excel
生成 0-1 随机数:
=RAND()

生成 1-100 随机整数:
=RANDBETWEEN(1, 100)

生成随机小数(指定范围):
=RAND()*(最大值-最小值)+最小值

生成随机字母:
=CHAR(RANDBETWEEN(65, 90))  大写字母

函数组合应用 #

精确计算 #

excel
四舍五入后求和:
=SUM(ROUND(A1:A10, 2))
(数组公式)

计算平均并保留2位小数:
=ROUND(AVERAGE(A1:A10), 2)

百分比计算:
=ROUND(A1/B1*100, 2) & "%"

条件计算 #

excel
绝对值大于10的个数:
=SUMPRODUCT(--(ABS(A1:A10)>10))

奇数个数:
=SUMPRODUCT(--(MOD(A1:A10,2)=1))

数据验证 #

excel
检查是否为整数:
=IF(A1=INT(A1), "整数", "非整数")

检查是否为完全平方数:
=IF(SQRT(A1)=INT(SQRT(A1)), "完全平方数", "不是")

实战案例 #

案例1:价格舍入策略 #

text
数据:
    A          B          C
1   原价       策略       结果
2   99.87      四舍五入   =ROUND(A2, 0)     → 100
3   99.87      向上取整   =ROUNDUP(A2, 0)   → 100
4   99.87      向下取整   =ROUNDDOWN(A2, 0) → 99
5   99.87      舍入到角   =ROUND(A2, 1)     → 99.9

案例2:分组编号 #

text
数据:
    A          B
1   序号       组号
2   1         =CEILING(A2/4, 1)  → 1
3   2         =CEILING(A3/4, 1)  → 1
4   3         =CEILING(A4/4, 1)  → 1
5   4         =CEILING(A5/4, 1)  → 1
6   5         =CEILING(A6/4, 1)  → 2

每4个一组,组号从1开始

案例3:计算工时 #

text
数据:
    A          B          C
1   开始时间   结束时间   工时(小时)
2   9:00       17:30      =ROUND((B2-A2)*24, 1)  → 8.5
3   8:30       18:00      =ROUND((B3-A3)*24, 1)  → 9.5

小结 #

高级数学函数提供了精确计算的能力:

函数 用途 示例
ROUND 四舍五入 =ROUND(3.14, 1)
ROUNDUP 向上舍入 =ROUNDUP(3.14, 1)
ROUNDDOWN 向下舍入 =ROUNDDOWN(3.19, 1)
INT 取整 =INT(3.9)
TRUNC 截断 =TRUNC(3.9)
MOD 取余 =MOD(10, 3)
ABS 绝对值 =ABS(-5)
POWER 幂运算 =POWER(2, 3)
SQRT 平方根 =SQRT(16)

接下来,让我们学习 统计函数,掌握数据分析的核心技能。

最后更新:2026-04-11