Microsoft Lab
全部软件
Excel函数与过程(Function and Sub)约 3 分钟

User Defined Function 自定义函数

重点内容


适用版本

桌面版通用(Excel 365 / 2021 / 2019 等)。


建立自定义函数:SUMEVENNUMBERS

  1. 打开 VBA 编辑器,插入一个新模块
  2. 声明函数,参数是一个范围(Range):
Function SUMEVENNUMBERS(rng As Range)

Dim cell As Range

For Each cell In rng
    If cell.Value Mod 2 = 0 Then
        SUMEVENNUMBERS = SUMEVENNUMBERS + cell.Value
    End If
Next cell

End Function

逻辑说明

  • For Each cell In rng:逐一检查传进来的范围里每一个单元格
  • cell.Value Mod 2 = 0:用 Mod(取余数)运算符判断这个数字除以 2 余数是不是 0,是就代表这是偶数
  • 符合条件的值累加进函数本身的返回值

使用方式

在工作表里像用一般函数一样输入 =SUMEVENNUMBERS(A1:A10),就能算出这个范围里所有偶数的总和。

📌 自定义函数只在建立它的这份工作簿里可以使用。


学完你会

常见错误

  • 忘记自定义函数是「绑定在这份工作簿」的,换一份文件就用不了
  • Mod 判断偶数写反条件(写成 <> 0 而不是 = 0),结果统计到的是奇数而不是偶数
  • 函数参数没有声明成 Range 类型,导致传进来的范围无法用 For Each 逐格检查

Sources

Blog / Website:

  1. User Defined Function
只记在你的浏览器里,换设备不会同步。