ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Excel高级应用实战:五大函数、数据透视表与Python校验

Excel高级应用实战:五大函数、数据透视表与Python校验 简介这份PPT课件面向高校师生及办公人员系统讲解Excel高级应用技巧帮助提升数据处理与分析效率。内容从工作簿、工作表、单元格地址等基本概念切入逐步展开数据输入技巧包括文本、数值、日期时间录入等差等比数列填充、自定义序列等进而深入数据处理方法涵盖RANK、MATCH、INDEX、VLOOKUP、OFFSET等函数应用年级班名次确定、不及格成绩红色标注、定位查找、数据透视表、高级筛选、双轴图表绘制、邮件合并及宏与VBA等实用主题并专门讲解数据有效性设置与清除配合考试报名表等实践操作。资源包内含1个PPT文件大小约717KB结构清晰、要点集中适合课堂讲授与自学参考。目前已有261人学习可作为教师备课素材或学生技能提升的速查手册。1. 从一份高校课件看 Excel 高级应用的真实边界很多人第一次接触「Excel 高级应用」是在大学课堂老师放一份 PPT从工作簿、工作表讲到 VLOOKUP、数据透视表最后留一句「宏与 VBA 自学」。这份《数据处理方法与技巧---EXCEL高级应用》课件就是典型样本江苏大学教师教育学院陶明华老师整理内容覆盖基本概念、数据输入技巧、RANK/MATCH/INDEX/VLOOKUP/OFFSET 五大函数、年级班名次、条件格式、定位查找、数据透视表、高级筛选、双轴图表、邮件合并、宏与 VBA。它不教你「怎么打开 Excel」而是直接切进教务、财务、盘库这类真实场景——成绩排名、工资单合并计算、等级考试发证、盘库打印。适合谁已经会做表但被重复劳动拖住的人以及需要把 Excel 当轻量数据处理工具、又不想上 Python 的从业者。下面按「概念→函数→实战→进阶」把课件里的点拆成能复现的操作。2. 单元格地址与数据输入被低估的效率地基2.1 相对、绝对、混合地址决定公式能不能拖课件把工作簿比作活页夹、工作表比作活页纸、单元格比作小方格这个类比不新鲜但真正卡住新手的是地址引用。B2 是相对地址拖动时行列都变$B$2 是绝对地址拖动时锁死B$2 和 $B2 是混合地址只锁行或只锁列。投资比例计算就是典型分子随行变、分母固定为总额公式写成B2/$B$10往下拖才不会错位。提示按 F4 可以在四种引用间循环切换写公式时比手打美元符号快得多。2.2 批量输入与自定义序列课件列了几组快捷键实操价值很高。CtrlEnter 在选定区域内填入相同值配合定位空值能一次补齐所有空白Ctrl; 插入当前日期CtrlShift: 插入当前时间。等差等比序列不用手填先输两个种子值选中后右键拖填充柄松手选「等差序列」或「等比序列」。自定义序列则解决「教授、副教授、讲师、助教」这类固定顺序——文件→选项→高级→编辑自定义列表导入后排序和填充都按这个顺序走。2.3 数据有效性与自定义格式考试报名表场景里性别列用数据有效性限制为「男,女」身份证列限制长度。操作路径数据→数据有效性→允许选「序列」→来源填男,女。清除时同一对话框左下角「全部清除」。自定义格式更省事选中区域→设置单元格格式→自定义输入2006级数控技术0班输入 1 就显示「2006级数控技术1班」。学号同理000格式让 152 显示为 000152。# 数据有效性设置的关键参数对应对话框字段 允许(Allow): 序列 来源(Source): 男,女 忽略空值: 勾选 提供下拉箭头: 勾选逻辑说明来源用英文逗号分隔中文逗号会导致整串被当成一个选项。参数上「忽略空值」勾选后空白单元格不触发报错适合预留行。3. 五大查找函数RANK、MATCH、INDEX、VLOOKUP、OFFSET3.1 RANK 与 IF 嵌套做排名和评级工资单里 J2 输入RANK(I2,$I$2:$I$40,0)第三参数 0 表示降序从大到小区域必须绝对引用否则下拉时范围漂移。评级用 IF 嵌套IF(I2600,高,IF(I2500,中,低))从高到低逐层判断顺序反了会把「高」全吞掉。3.2 MATCH 的三种匹配类型MATCH 返回查找值在区域中的位置。第三参数决定行为0 精确匹配、数据无需排序1 找小于等于目标的最大值、数据须升序-1 找大于等于目标的最小值、数据须降序。课件里MATCH(B46,B2:B40,0)就是精确匹配定位姓名行号。3.3 VLOOKUP 四参数与常见坑VLOOKUP(E46,B2:E40,4,0)参数1 是查找值参数2 是含首列的表区域参数3 是返回列序号首列算 1参数4 为 0/FALSE 精确匹配。课件原文把 FALSE/TRUE 的匹配描述写反了实际使用记住0 或 FALSE 是精确匹配1 或 TRUE 是近似匹配。近似匹配要求首列升序常用于区间查税率、查等级。函数返回内容关键参数数据要求RANK排名序号第三参数 0 降序无MATCH位置序号第三参数 0/1/-11 升序、-1 降序INDEX交叉单元格值行号、列号无VLOOKUP匹配行某列值第四参数 0 精确近似需升序OFFSET偏移后区域行偏移、列偏移、高、宽无3.4 INDEXMATCH 组合与 OFFSET 动态区域INDEX 返回指定行列交叉值INDEX(A1:C10,5,2)取第 5 行第 2 列。它和 MATCH 组合能替代 VLOOKUP 实现反向查找INDEX(B2:O17,MATCH(B23,A2:A17,0),MATCH(C23,B1:O1,0))两个 MATCH 分别定位行和列。OFFSET 做动态区域OFFSET(数据库!$B$3,,,20,8)第一参数是参照点第二三参数是行列偏移省略即 0第四五参数是新区域的行数和列数常用于数据透视表动态源。# 用 pandas 复现 VLOOKUP 精确匹配便于批量校验 Excel 结果 import pandas as pd left pd.read_excel(工资单.xlsx, sheet_name查询) right pd.read_excel(工资单.xlsx, sheet_name数据源) # howleft 等价于 VLOOKUP 精确匹配未命中填 NaN result left.merge(right[[姓名, 基本工资]], on姓名, howleft) result[基本工资] result[基本工资].fillna(0) print(result.head())逻辑说明merge 的howleft保留左表全部行对应 VLOOKUP 找不到时返回 #N/A 的行为这里用 fillna 兜底。参数上on姓名要求两表列名一致不一致时改用left_on/right_on。4. 教务与财务实战名次、条件格式、定位查找4.1 年级名次与班级名次分开算考试成绩表里年级排名在 I3 输入RANK(H3,$H$3:$H$122,0)区域锁死全年级。班级排名要分段一班 J3 用RANK(H3,$H$3:$H$42,0)二班 J43 用RANK(H43,$H$43:$H$82,0)三班 J83 用RANK(H83,$H$83:$H$122,0)。每段区域独立绝对引用这样同一列里三个班的排名互不干扰。4.2 条件格式把不及格标红选中 C3:G122开始→条件格式→新建规则→「只为包含以下内容的单元格设置格式」条件设为「单元格值 小于 60」格式选红色字体或填充。多个条件重复添加规则即可。2003 版本要求多条件一次完成新版可以逐条加。4.3 定位查找下拉选行列、公式自动取值课件里的定位查找工作表做得很巧。B23 和 C23 用数据有效性做成下拉B23 来源$A$2:$A$17行标题C23 来源$B$1:$O$1列标题。F23 输入INDEX(B2:O17,MATCH(B23,A2:A17,0),MATCH(C23,B1:O1,0))选行选列后自动取交叉值。再给 B2:O17 加条件格式公式($B$23$A2)($C$23B$1)命中行列高亮黄色。# 定位查找的公式拆解对应 F23 外层: INDEX(数据区, 行号, 列号) 行号: MATCH(B23, A2:A17, 0) # 按行标题找行位置 列号: MATCH(C23, B1:O1, 0) # 按列标题找列位置 高亮: ($B$23$A2)($C$23B$1) # 两个条件相加非0即高亮逻辑说明两个 MATCH 都用 0 精确匹配保证下拉选项和标题完全一致才命中。条件格式公式里$B$23锁列不锁行、$A2锁行不锁列才能整片区域正确判断。4.4 清除 0 值与空单元格补值清除 0选中 E2:F204查找和替换查找内容填 0替换为留空勾选「单元格匹配」全部替换。补空值选中区域→查找和替换→定位条件→空值→确定所有空单元格被选中输入 0 后按 CtrlEnter 一次填满。这两步在盘库和财务对账里几乎每次都用。5. 数据透视表、双轴图与邮件合并的进阶用法5.1 数据透视表做盘库汇总盘库打印问题的核心是「同一物料多批次入库出库要按物料汇总」。选中数据区→插入→数据透视表→把物料放行、数量放值、出入库类型放列立刻得到每物料进出存。若数据源会增长用 OFFSET 定义动态名称再作为透视表源刷新即纳入新行。5.2 双轴图表处理量纲差异当「数量」和「金额」放一张图数量几百、金额几万柱子会被压平。做法插入组合图金额系列设为次坐标轴数量用柱形、金额用折线两条纵轴各自缩放。这是课件里双轴图表要解决的实际问题。5.3 邮件合并带图片批量发证等级考试发证场景Word 主文档放证书模板邮件→选择收件人→使用现有列表Excel 名单插入合并域填姓名、科目、证书编号。图片合并需要技巧在 Excel 里存图片路径列Word 中用INCLUDEPICTURE域配合\* MERGEFORMAT合并时按路径抓图。路径必须是绝对路径且图片文件名不含特殊字符。// 用 Node.js 批量生成证书编号替代手工编号 const students require(./students.json); students.forEach((s, i) { // 编号规则年份 科目代码 四位序号 s.certNo 2025${s.subjectCode}${String(i 1).padStart(4, 0)}; }); console.log(students[0].certNo); // 例2025JS0001逻辑说明padStart(4, 0) 保证序号补零到四位避免 1 和 10 排序错乱。参数上 subjectCode 来自名单表实际用 Excel 公式TEXT(ROW()-1,0000)也能达到同样效果。5.4 宏与 VBA 收尾课件最后留了宏与 VBA。录制宏适合固定动作视图→宏→录制宏做完一遍停止之后一键重放。要改逻辑就按 AltF11 进编辑器常见入口是Sub 名称()和Range(A1).Value。批量处理几百个工作簿时VBA 的Workbooks.Open循环比手工快一个量级。注意宏文件需另存为 .xlsm且默认禁用宏分发前确认对方信任设置否则打开后宏不执行。6. 用 Python 校验 Excel 公式结果避免人工核对课件里的函数和条件格式在几百行数据上肉眼很难验错。我一般用 pandas 把 Excel 结果读出来用 Python 重算一遍做交叉验证。比如校验 RANK 排名import pandas as pd df pd.read_excel(考试成绩表.xlsx) # methodmin 对应 RANK 的并列同名次行为 df[py_rank] df[总分].rank(ascendingFalse, methodmin).astype(int) # 与 Excel 算出的排名列对比 diff df[df[py_rank] ! df[Excel排名]] print(f不一致行数: {len(diff)}) print(diff[[姓名, 总分, py_rank, Excel排名]].head())逻辑说明ascendingFalse对应 RANK 第三参数 0methodmin让并列值取最小名次和 Excel RANK 行为一致。参数上若 Excel 用的是methodaverage风格如 RANK.AVG这里要同步改。跑完看 diff不一致的行多半是区域引用没锁死或分段排名边界写错。再补一个 VLOOKUP 未命中排查Excel 里 #N/A 常见原因是查找值有空格、格式不一致文本型数字 vs 数值、或首列不在区域第一列。用TRIM()清空格、VALUE()转数值、或改用 INDEXMATCH 绕开首列限制。批量场景下Python 的 merge 加indicatorTrue能直接标出哪些行没匹配上merged left.merge(right, on姓名, howleft, indicatorTrue) print(merged[merged[_merge] left_only][[姓名]])_merge列值为left_only的就是 VLOOKUP 会返回 #N/A 的行比在 Excel 里逐行找快得多。这套「Excel 出结果、Python 做校验」的组合在成绩、工资、盘库这类不能出错的数据上比反复点鼠标可靠。本文还有配套的精品资源点击获取
返回列表