承接业务:产品做图/平面设计、产品拍照/拍视频、上产品链接、店铺打理、易企秀/美篇制作、电商培训、小程序搭建。微信:13123457807
目录

Excel常用公式/函数大全

好的,这份Excel常用公式/函数大全涵盖了日常工作、学习中最核心和实用的功能,按类别整理,并附有简明用法和示例。建议收藏备用!

目录 (主要类别)

  1. 基础数学与统计
  2. 文本操作
  3. 查找与引用
  4. 逻辑判断
  5. 日期与时间
  6. 信息与检查
  7. 聚合与计算
  8. 其他实用函数


一、 基础数学与统计

  1. ​**SUM: ​求和**​ ​用法:​​ =SUM(number1, [number2], ...) ​说明:​​ 计算一组数值的总和。可以输入单个单元格、区域或多个值。 ​示例:​​ =SUM(A1:A10) 计算A1到A10单元格的和。 ​示例:​​ =SUM(5, A1, B2:B5)
  2. ​**AVERAGE: ​计算平均值**​ ​用法:​​ =AVERAGE(number1, [number2], ...) ​说明:​​ 计算一组数值的算术平均值(总和除以个数)。忽略文本和逻辑值。 ​示例:​​ =AVERAGE(C2:C100) 计算C列前100个成绩的平均分。 ​类似:​​ AVERAGEA (包括文本和逻辑值,文本算0,TRUE算1,FALSE算0)。
  3. ​**COUNT: ​计数数值**​ ​用法:​​ =COUNT(value1, [value2], ...) ​说明:​​ 计算参数列表中数值型数据的个数(数字、日期)。忽略文本、错误值、空单元格。 ​示例:​​ =COUNT(A1:A10) 统计A1:A10中有多少个是数字或日期。 ​类似:​​ COUNTA: 计数非空单元格(包括文本、逻辑值)。 COUNTBLANK: 计数指定范围内的空单元格。
  4. ​**MAX: ​查找最大值**​ ​用法:​​ =MAX(number1, [number2], ...) ​说明:​​ 返回一组数值中的最大值。 ​示例:​​ =MAX(D2:D500) 找出D列的最大销售额。 ​类似:​​ MIN: 查找最小值。
  5. ​**ROUND: ​四舍五入**​ ​用法:​​ =ROUND(number, num_digits) ​说明:​​ 将数字四舍五入到指定的小数位数。 num_digits > 0: 舍入到指定的小数位后。 num_digits = 0: 舍入到最接近的整数。 num_digits < 0: 舍入到小数点左侧的指定位(如10位、100位)。 ​示例:​​ =ROUND(123.4567, 2) → 123.46 ​示例:​​ =ROUND(123.4567, -1) → 120 ​类似:​​ ROUNDUP: 总是向上舍入(远离零)。 ROUNDDOWN: 总是向下舍入(朝向零)。
  6. ​**SUMIF: ​单条件求和**​ ​用法:​​ =SUMIF(range, criteria, [sum_range]) ​说明:​​ 对区域中满足指定条件的单元格求和。 range: 要用于条件判断的区域。 criteria: 条件(数字、表达式如">100"、文本如"苹果"、单元格引用)。 sum_range: (可选)实际要求和的范围。如果省略,则对range求和。 ​示例:​​ =SUMIF(B1:B100, "销售部", C1:C100) 对“销售部”(B列)对应的销售额(C列)求和。 ​示例:​​ =SUMIF(A1:A10, ">500") 求A1:A10中大于500的所有数值之和。
  7. ​**SUMIFS: ​多条件求和 (Excel 2007+)​**​ ​用法:​​ =SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...) ​说明:​​ 对区域中满足多个指定条件的单元格求和。比SUMIF更灵活。 sum_range: 实际要求和的范围。 criteria_range1: 第一个条件判断的区域。 criteria1: 第一个条件。 criteria_range2, criteria2, ...: 附加的条件区域和条件(最多127个)。 ​示例:​​ =SUMIFS(C1:C100, A1:A100, "销售部", B1:B100, ">2024-1-1") 求销售部(A列)在2024年1月1日之后(B列)的销售额(C列)之和。
  8. ​**COUNTIF: ​单条件计数**​ ​用法:​​ =COUNTIF(range, criteria) ​说明:​​ 计算区域中满足给定条件的单元格个数。 ​示例:​​ =COUNTIF(D1:D500, "已完成") 统计状态为“已完成”(D列)的任务数。 ​示例:​​ =COUNTIF(E1:E100, "<60") 统计成绩(E列)低于60分的人数。
  9. ​**COUNTIFS: ​多条件计数 (Excel 2007+)​**​ ​用法:​​ =COUNTIFS(criteria_range1, criteria1, [criteria_range2, criteria2], ...) ​说明:​​ 计算区域中满足多个给定条件的单元格个数。 ​示例:​​ =COUNTIFS(A1:A100, "销售部", D1:D100, "进行中") 统计销售部(A列)且状态为“进行中”(D列)的任务数量。


二、 文本操作

  1. ​**CONCAT / TEXTJOIN: ​连接文本**​ ​**CONCAT**: ​用法:​​ =CONCAT(text1, [text2], ...) ​说明:​​ 将多个文本字符串连接成一个字符串。比旧版 & 运算符简洁。 ​**TEXTJOIN**: ​用法:​​ =TEXTJOIN(delimiter, ignore_empty, text1, [text2], ...) ​说明:​​ 使用指定的分隔符连接文本区域或文本值,并可选择忽略空单元格。 delimiter: 连接时放在各项之间的分隔符(如 ", ", "-")。 ignore_empty: 如果为TRUE,则忽略区域中的空单元格;FALSE则包含。 ​CONCAT示例:​​ =CONCAT(A2, " ", B2) 将A2和B2连接,中间加空格 → "张 三"。 ​TEXTJOIN示例:​​ =TEXTJOIN(", ", TRUE, A2:A10) 将A2:A10用逗号和空格连接,忽略空值 → "苹果, 香蕉, 橙子"。
  2. ​**LEFT / RIGHT / MID: ​提取子文本**​ ​**LEFT**: ​用法:​​ =LEFT(text, [num_chars]) ​说明:​​ 从文本字符串的左侧开始提取指定数量的字符。 [num_chars]: 可选,要提取的字符数。默认为1。 ​**RIGHT**: ​用法:​​ =RIGHT(text, [num_chars]) ​说明:​​ 从文本字符串的右侧开始提取指定数量的字符。 ​**MID**: ​用法:​​ =MID(text, start_num, num_chars) ​说明:​​ 从文本字符串的指定位置开始提取指定数量的字符。 start_num: 开始提取的位置(第一个字符是1)。 num_chars: 要提取的字符数。 ​LEFT示例:​​ =LEFT("电话号码", 3) → "电话"。 ​MID示例:​​ =MID("2025-08-12", 6, 2) → "08" (提取月份)。 ​RIGHT示例:​​ =RIGHT("产品编码: ABC-123", 3) → "123"。
  3. ​**FIND / SEARCH: ​查找文本位置**​ ​**FIND**: ​用法:​​ =FIND(find_text, within_text, [start_num]) ​说明:​​ 在文本字符串中查找特定子字符串的位置(区分大小写)。 返回找到的子字符串起始位置(数字)。找不到则返回#VALUE!错误。 start_num: 可选,开始查找的位置(默认为1)。 ​**SEARCH**: ​用法:​​ =SEARCH(find_text, within_text, [start_num]) ​说明:​​ 在文本字符串中查找特定子字符串的位置(不区分大小写)。 ​FIND示例:​​ =FIND("C", "ABCDE") → 3。 ​SEARCH示例:​​ =SEARCH("c", "ABCDE") → 3 (小写c也能找到大写的C)。
  4. ​**LEN: ​计算文本长度**​ ​用法:​​ =LEN(text) ​说明:​​ 返回文本字符串中的字符个数(包括空格)。 ​示例:​​ =LEN("Excel函数大全") → 7。
  5. ​**TRIM: ​删除多余空格**​ ​用法:​​ =TRIM(text) ​说明:​​ 删除文本字符串开头、结尾和单词之间的多余空格(只保留一个单词之间的空格)。常用于清理从外部导入的数据。 ​示例:​​ =TRIM(" Excel 中有 多余 空格 ") → "Excel 中有 多余 空格"。
  6. ​**UPPER / LOWER / PROPER: ​改变文本大小写**​ ​**UPPER: =UPPER(text) - 将文本转换为大写**。 ​**LOWER: =LOWER(text) - 将文本转换为小写**。 ​**PROPER: =PROPER(text) - 将文本转换为首字母大写**​(每个单词的第一个字母)。 ​PROPER示例:​​ =PROPER("john smith") → "John Smith"。
  7. ​**REPLACE / SUBSTITUTE: ​替换文本**​ ​**REPLACE**: ​用法:​​ =REPLACE(old_text, start_num, num_chars, new_text) ​说明:​​ 替换文本中从指定位置开始的指定数量的字符。 start_num: 要替换的第一个字符的位置。 num_chars: 要替换的字符数。 new_text: 替换成的文本。 ​**SUBSTITUTE**: ​用法:​​ =SUBSTITUTE(text, old_text, new_text, [instance_num]) ​说明:​​ 在文本字符串中用新的文本替换指定的旧文本(可以指定替换第几次出现的)。 [instance_num]: 可选,指定要替换第几个出现的 old_text。如果省略,替换所有出现。 ​REPLACE示例:​​ =REPLACE("ABCDEFG", 3, 2, "XX") → "ABXXEFG" (从第3位开始,替换2个字符"CD"为"XX")。 ​SUBSTITUTE示例:​​ =SUBSTITUTE("apple orange apple", "apple", "banana", 2) → "apple orange banana" (只替换第二个"apple")。
  8. ​**TEXT: ​格式化显示数字或日期为文本**​ ​用法:​​ =TEXT(value, format_text) ​说明:​​ 将数值或日期/时间值转换为具有指定格式的文本。​重要提示:结果是文本格式,不能直接用于计算!​​ ​常用格式代码:​​ 日期: "yyyy-mm-dd", "dd/mm/yyyy", "mmmm d, yyyy" 时间: "h:mm AM/PM", "hh:mm:ss" 数字: "#,##0" (千分位), "0.00%", "$#,##0.00", "0" (显示为整数) ​示例:​​ =TEXT(A1, "yyyy年m月d日") 将A1的日期显示为 "2025年8月12日"。 ​示例:​​ =TEXT(B2, "$#,##0.00") 将B2显示为货币格式 "$1,234.56"。


三、 查找与引用

  1. ​**VLOOKUP: ​垂直查找 (查找范围应在最左列)​**​ ​用法:​​ =VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup]) ​说明:​​ 在表格或区域的第一列中查找某个值,然后返回该行中指定列的值。 ​参数:​​ lookup_value: 要查找的值。 table_array: 查找的整个范围(通常要使用绝对引用 $A$1:$D$100)。 col_index_num: 在table_array中,要返回值所在的列号(从查找范围的第1列开始算)。 [range_lookup]: 可选,通常设置为FALSE(精确匹配)或0。设置为TRUE或1时是近似匹配(要求查找范围的第一列必须按升序排序,否则结果可能错误)。 ​关键限制:​​ 查找的值必须位于table_array的最左边列。 ​常见错误 #N/A: 找不到精确匹配项。 ​示例:​​ =VLOOKUP(F2, $A$2:$D$100, 4, FALSE) 在A列(姓名)查找F2单元格的值,找到对应的行后返回该行第4列(工资)的值。
  2. ​**HLOOKUP: ​水平查找 (查找范围应在首行)​**​ ​用法:​​ =HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup]) ​说明:​​ 在表格或区域的第一行中查找某个值,然后返回该列中指定行的值。逻辑与VLOOKUP类似,方向不同。较少用。 ​示例:​​ =HLOOKUP("一月", $A$1:$F$5, 3, FALSE) 在第一行(月份)查找"一月",找到对应的列后返回该列第3行(销售额)的值。
  3. ​**XLOOKUP: ​强大灵活的查找 (Excel 365/2021+)​**​ ​用法:​​ =XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode]) ​说明:​​ VLOOKUP/HLOOKUP的革命性替代品,功能强大灵活。 ​核心参数:​​ lookup_value: 要查找的值。 lookup_array: 要搜索的值所在的单行或单列区域。 return_array: 要返回的值所在的单行或单列区域。​大小和方向必须与lookup_array相同或兼容(即都是行或列)​。 [if_not_found]: 可选,找不到匹配项时返回的值(代替#N/A)。 [match_mode]: 可选, 0 (默认): 精确匹配。找不到返回#N/A或用户指定值。 -1: 精确匹配,如果找不到则返回下一个更小的项​(需lookup_array升序排序)。 1: 精确匹配,如果找不到则返回下一个更大的项​(需lookup_array升序排序)。 2: 通配符匹配 (*, ?)。 [search_mode]: 可选,指定搜索顺序(从前往后1、从后往前-1、二分查找2或-2,默认1)。 ​优势:​​ 可查找左侧列。 可返回整行/列。 不需要列号。 自带错误处理。 支持水平和垂直搜索。 支持通配符。 支持近似匹配无需预先排序​(通过match_mode设置)。 ​示例 (替代VLOOKUP):​​ =XLOOKUP(F2, $A$2:$A$100, $D$2:$D$100, "未找到", 0) 在A列(姓名)查找F2的值,返回D列(工资)的值,找不到则显示"未找到"。 ​示例 (返回多列):​​ =XLOOKUP(F2, $A$2:$A$100, $B$2:$D$100) 在A列查找F2的值,返回对应行的B、C、D列的值(一行的所有信息)。
  4. ​**INDEX: ​根据位置返回单元格值或引用**​ ​用法:​​ =INDEX(array, row_num, [col_num]) (数组形式 - 首选) =INDEX(reference, row_num, [col_num], [area_num]) (引用形式) ​说明:​​ 根据给定的行号和列号(或区域号),从一个区域或数组中返回具体的值或单元格引用。 ​示例:​​ =INDEX(A1:C10, 3, 2) 返回A1:C10区域中第3行、第2列的值(即B3的值)。 ​示例:​​ =INDEX((A1:A10, B1:B10), 5, 1, 2) 返回第二个区域(B1:B10)中第5行的值(即B5的值)。
  5. ​**MATCH: ​查找值在区域中的位置**​ ​用法:​​ =MATCH(lookup_value, lookup_array, [match_type]) ​说明:​​ 在单行或单列区域中搜索指定值,并返回该值在区域中的相对位置(行号或列号)。 ​**[match_type]:​**​ 1 或省略: 查找小于或等于lookup_value的最大值(要求lookup_array按升序排序)。 0: 精确匹配。可返回第一个精确匹配项的位置。 -1: 查找大于或等于lookup_value的最小值(要求lookup_array按降序排序)。 ​示例:​​ =MATCH("张三", A1:A100, 0) 返回"张三"在A1:A100区域中的行号(相对于A1的位置,如果是第5行,则返回5)。 ​经典组合 INDEX + MATCH: 常用作更灵活的VLOOKUP替代(可左查、可查找区域任意位置的列)。 ​INDEX+MATCH示例:​​ =INDEX(D1:D100, MATCH("张三", A1:A100, 0)) 效果等同于 VLOOKUP("张三", A1:D100, 4, FALSE),但更容易应对列位置的变动。
  6. ​**CHOOSE: ​根据索引号返回值**​ ​用法:​​ =CHOOSE(index_num, value1, [value2], ...) ​说明:​​ 根据给定的索引号(从1开始),返回参数列表中的相应值。通常用于创建简单的下拉菜单或基于代码的选择。 ​示例:​​ =CHOOSE(2, "红", "黄", "绿") → "黄"。


四、 逻辑判断

  1. ​**IF: ​条件判断**​ ​用法:​​ =IF(logical_test, value_if_true, [value_if_false]) ​说明:​​ 执行条件测试,如果测试为TRUE则返回value_if_true,如果为FALSE则返回value_if_false(如果省略value_if_false,则返回FALSE)。 ​核心:​​ logical_test 是一个计算结果为TRUE或FALSE的表达式。 ​示例:​​ =IF(B2 > 1000, "优秀", "普通") 如果B2的值大于1000返回"优秀",否则返回"普通"。 ​嵌套示例:​​ =IF(C2="A", 100, IF(C2="B", 80, IF(C2="C", 60, 0))) 根据评级返回不同分数。
  2. ​**AND: ​逻辑与**​ ​用法:​​ =AND(logical1, [logical2], ...) ​说明:​​ 所有参数计算结果为TRUE时返回TRUE,否则返回FALSE。常用在IF的条件测试中。 ​示例:​​ =IF(AND(A2>60, B2>60), "合格", "不合格") 两科都大于60分才算合格。
  3. ​**OR: ​逻辑或**​ ​用法:​​ =OR(logical1, [logical2], ...) ​说明:​​ 任意一个参数计算结果为TRUE即返回TRUE,全为FALSE才返回FALSE。常用在IF的条件测试中。 ​示例:​​ =IF(OR(C2="是", D2="是"), "有优惠", "无优惠") C列或D列中有一个是"是"就算有优惠。
  4. ​**NOT: ​逻辑非**​ ​用法:​​ =NOT(logical) ​说明:​​ 反转逻辑值。TRUE变FALSE,FALSE变TRUE。 ​示例:​​ =IF(NOT(ISBLANK(E2)), "已填写", "未填写") 如果E2不空,显示"已填写",否则显示"未填写"。
  5. ​**IFS: ​多条件判断 (Excel 2016+)​**​ ​用法:​​ =IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], ...) ​说明:​​ 按顺序测试多个条件,返回第一个为TRUE条件对应的值。无需嵌套多个IF。 ​优势:​​ 逻辑更清晰。 ​限制:​​ 如果所有条件都不满足,会返回#N/A!错误。需要一个默认值可以用最后一个条件用TRUE。 ​示例 (替代嵌套IF):​​ =IFS(C2="A", 100, C2="B", 80, C2="C", 60, TRUE, 0)。
  6. ​**IFERROR: ​错误值捕获**​ ​用法:​​ =IFERROR(value, value_if_error) ​说明:​​ 如果公式计算结果产生错误值(如#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME? 或 #NULL!),则返回value_if_error(可以是文本、数值、另一个公式或空字符串"");否则返回公式本身的结果。 ​用途:​​ 使工作表更美观,避免显示错误值影响理解。 ​示例:​​ =IFERROR(VLOOKUP(F2, $A$1:$D$100, 4, 0), "未找到") 查找不到时显示"未找到"而非#N/A。 ​示例:​​ =IFERROR(A2/B2, 0) 避免除以零错误。
  7. ​**SWITCH: ​基于值切换 (Excel 2016+)​**​ ​用法:​​ =SWITCH(expression, value1, result1, [value2, result2], ..., [default]) ​说明:​​ 将expression的值与一系列值进行比较,匹配成功则返回对应的result。如果都不匹配,则返回可选的default值。若无default且无匹配,返回#N/A!。 ​适用场景:​​ 根据一个特定值(如代码、状态)返回对应结果。 ​示例 (替代IFS/CHOOSE):​​ =SWITCH(D2, 1, "红", 2, "黄", 3, "绿", "未知") 如果D2=1返回"红",D2=2返回"黄",D2=3返回"绿",否则返回"未知"。


五、 日期与时间

  1. ​**TODAY: ​获取当前日期**​ ​用法:​​ =TODAY() ​说明:​​ 返回当前系统日期(动态更新)。​不需要参数。 ​示例:​​ =TODAY() 显示如 2025-08-12 (取决于系统设置)。
  2. ​**NOW: ​获取当前日期和时间**​ ​用法:​​ =NOW() ​说明:​​ 返回当前系统日期和时间(动态更新)。​不需要参数。 ​示例:​​ =NOW() 显示如 2025-08-12 11:30。
  3. ​**YEAR / MONTH / DAY / HOUR / MINUTE / SECOND: ​提取日期时间成分**​ ​用法:​​ YEAR(serial_number) MONTH(serial_number) DAY(serial_number) HOUR(serial_number) MINUTE(serial_number) SECOND(serial_number) ​说明:​​ 从日期/时间值中提取年份、月份(1-12)、日(1-31)、小时(0-23)、分钟(0-59)、秒(0-59)。 ​示例:​​ =YEAR(A2) 提取A2单元格日期的年份 → 2025。 ​示例:​​ =MONTH(TODAY()) 提取当前日期的月份 → 8 (八月)。
  4. ​**DATE: ​构造日期**​ ​用法:​​ =DATE(year, month, day) ​说明:​​ 将给定的年、月、日转换为日期值。 ​示例:​​ =DATE(2024, 12, 31) → 2024-12-31。
  5. ​**DATEDIF: ​计算两日期间隔 (隐藏函数)​**​ ​用法:​​ =DATEDIF(start_date, end_date, unit) ​说明:​​ 计算两个日期之间的天数、月数或年数。不会自动提示,需要手动输入函数名。 ​**unit 类型:​**​ "Y": 整年数。 "M": 整月数。 "D": 整天数。 "MD": start_date与end_date日期天数之差(忽略年和月)。 "YM": start_date与end_date月份之差(忽略年和天)。 "YD": start_date与end_date天数之差(忽略年)。 ​示例 (计算年龄):​​ =DATEDIF(B2, TODAY(), "Y") 根据出生日期(B2)计算截至今天的年龄(整岁)。
  6. ​**EDATE: ​计算指定月数之前/之后的日期**​ ​用法:​​ =EDATE(start_date, months) ​说明:​​ 返回与指定日期相隔指定月数的日期。 months: 正数:未来日期。 负数:过去日期。 ​示例:​​ =EDATE(A1, 3) 计算A1日期3个月后的日期。 ​示例:​​ =EDATE(TODAY(), -1) 计算上月今天的日期。
  7. ​**EOMONTH: ​计算指定月数之前/之后那个月的最后一天**​ ​用法:​​ =EOMONTH(start_date, months) ​说明:​​ 返回与指定日期相隔指定月数的那个月的最后一天。 ​示例:​​ =EOMONTH(TODAY(), 0) 返回本月最后一天的日期。 ​示例:​​ =EOMONTH("2025-01-15", 1) → 2025-02-28 (2025年2月的最后一天)。
  8. ​**WEEKDAY: ​计算日期是星期几**​ ​用法:​​ =WEEKDAY(serial_number, [return_type]) ​说明:​​ 返回代表一周中的第几天的数字。 ​常用 return_type (默认为1):​​ 1 (默认): 星期日 = 1, 星期一 = 2, ..., 星期六 = 7。 2: 星期一 = 1, 星期二 = 2, ..., 星期日 = 7 (ISO标准)。 3: 星期一 = 0, 星期二 = 1, ..., 星期日 = 6。 ​示例:​​ =WEEKDAY("2025-08-12", 2) → 2 (星期二)。
  9. ​**NETWORKDAYS: ​计算两日期间的工作日天数**​ ​用法:​​ =NETWORKDAYS(start_date, end_date, [holidays]) ​说明:​​ 计算两个日期之间的工作日(周一至周五)天数,可选择排除节假日(由holidays区域指定)。 ​示例:​​ =NETWORKDAYS(A2, B2) 计算A2到B2之间的工作日天数(默认不含周末)。 ​示例:​​ =NETWORKDAYS("2024-10-01", "2024-10-07", $C$1:$C$3) 计算十一长假期间的工作日天数,其中C1:C3区域定义了1-3号为法定假日。
  10. ​**NETWORKDAYS.INTL: ​更灵活的工作日计算**​ ​用法:​​ =NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays]) ​说明:​​ 扩展的NETWORKDAYS,可以自定义周末是哪几天。 [weekend]: 可选,一个数字或字符串代码,指定周末。例如: 1 或 "0000011": 周六、周日休息 (默认)。 11 或 "0000001": 仅周日休息。 2 或 "1000001": 仅周日和周一休息? (需查文档或使用内置数字代码)。


六、 信息与检查

  1. ​**ISNUMBER: ​检查是否是数字**​


七、 聚合与计算 (通常作用于可见单元格,常用于筛选或分类汇总环境)

  1. ​**SUBTOTAL: ​分类汇总/忽略隐藏行**​


八、 其他实用函数

  1. ​**ROW / COLUMN: ​获取行号/列号**​ ​**ROW**: ​用法:​​ =ROW([reference]) ​说明:​​ 返回引用的行号。省略[reference]则返回公式所在单元格的行号。 ​**COLUMN**: ​用法:​​ =COLUMN([reference]) ​说明:​​ 返回引用的列号。省略[reference]则返回公式所在单元格的列号。 ​示例:​​ =ROW() 在B5单元格中输入返回 5。 ​示例:​​ =ROW(C10) 返回 10。 ​示例:​​ =COLUMN() 在D3单元格中输入返回 4 (D是第4列)。 ​示例:​​ =COLUMN(G5) 返回 7 (G是第7列)。
  2. ​**ADDRESS: ​创建单元格地址文本**​ ​用法:​​ =ADDRESS(row_num, column_num, [abs_num], [a1], [sheet_text]) ​说明:​​ 根据给定的行号和列号(可以设置引用方式),返回单元格地址的文本字符串。 [abs_num]: 可选,指定引用类型: 1 或省略:绝对引用 ($A$1). 2: 绝对行号,相对列号 (A$1). 3: 相对行号,绝对列号 ($A1). 4: 相对引用 (A1). [a1]: 可选,TRUE为A1样式,FALSE为R1C1样式(默认为TRUE)。 [sheet_text]: 可选,工作表名称。 ​示例:​​ =ADDRESS(5, 2, 1) → "$B$5" (绝对引用)。 ​示例:​​ =ADDRESS(5, 2, 4, TRUE, "Sheet2") → "Sheet2!B5" (相对引用)。
  3. ​**OFFSET: ​基于起点构建偏移引用**​ ​用法:​​ =OFFSET(reference, rows, cols, [height], [width]) ​说明:​​ 以一个单元格或区域为起点,偏移指定行数、列数后返回新位置的引用,并可以指定新引用区域的大小。​功能强大但复杂,计算量大且易出错(易成为易失性函数影响性能),XLOOKUP和INDEX是更现代、更稳定的替代方案。​​ reference: 起点引用。 rows: 上下偏移的行数(正数下移,负数上移)。 cols: 左右偏移的列数(正数右移,负数左移)。 [height]: 可选,返回区域的行数。省略则与reference行数相同。 [width]: 可选,返回区域的列数。省略则与reference列数相同。 ​示例 (动态求和最近3个月):​​ =SUM(OFFSET(C2, COUNT(C:C)-3, 0, 3, 1)) (假设C列包含连续月份数据,此公式复杂且易错,仅作说明。实践中推荐INDEX或其他结构化方法)。


使用函数的建议:​

  • 开始输入:​​ 在单元格中输入 = 号,Excel会自动提示函数名。
  • 公式选项卡:​​ 使用“公式”选项卡 -> “插入函数”按钮打开向导。
  • 函数屏幕提示:​​ 当你在编辑栏输入函数名和左括号 ( 后,Excel会显示函数语法和参数的简短说明。
  • F1键:​​ 按 F1 键可以在Excel帮助中查找当前选中函数的详细说明和示例。
  • 相对/绝对引用:​​ 注意公式复制时 A1 (相对), $A$1 (绝对), $A1 (混合), A$1 (混合) 的区别。按F4键可在编辑栏切换。
  • 函数嵌套:​​ 函数可以嵌套在另一个函数中作为参数使用(如 =SUM(IF(...)), =IFERROR(VLOOKUP(...), ""))。
  • 按需学习:​​ 不必一次性记住所有函数,根据实际工作中的需求逐步学习和应用才是最有效的。

这份清单覆盖了Excel函数的核心与常用部分。熟练掌握这些,绝大多数日常数据处理任务都能高效完成。希望对你有所帮助!