- 4
- 0
- 约 16页
- 2018-04-13 发布于贵州
- 举报
第12章 使用BA开发数据自动化计算和分析功能
470
470
第 12 章
使用 VBA 开发数据自动化计算和分析功能
??使用 VBA 开发数据自动计算拓展功能
??使用 VBA 开发数据自动分析拓展功能
在学习 Excel VBA 的基本语法知识和掌握 Excel VBA 的基础操作后,用户就可以使用 Excel VBA 中的常量、变量、流程控制语句、过程和对象来编写某一个任务的过程代码了, 使数据的复杂计算与分析变更加简单、方便。
PAGE
PAGE 472
12.1 使用 VBA 开发数据自动计算拓展功能
在 Excel 中用户可以使用公式和函数来完成一些常用数据的计算,如数值求和、求乘积、 求最大值、最小值等,当用户希望对数据进行某种复杂计算,如在身份证号码中提取公民性别、 公民年龄等,可以使用 MID()、IF()函数嵌套来完成,若想简化这一计算过程,可以使用 Excel VBA 的 Function 过程和变量、运算符和函数来编写程序代码自动完成。
12.1.1 根据身份证号码判断公民性别
身份证号码是每个公民个人身份的有效证件,它由六位数字的地址码、八位数字出生日期码、 三位数字顺序码和一位数字校验码组成。而在三位数字顺序码的最后一位,用于标记公民的性别, 奇数为男性、偶数为女性。当用户希望根据身份证号码判断公民的性别时,可以使用 Excel VBA 语言编写从身份证号码中提取第 17 位进行判断的过程代码,从而自定义提取性别函数轻松判断 公民性别。
原始文件:实例文件\第 25 章\原始文件\公民身份证号码统计表.xlsx
最终文件:实例文件\第 25 章\最终文件\公民身份证号码统计表.xlsm
Step01
单击 Visual Basic 按钮
Step02
添加模块
打开实例文件\第 25 章\原始文件\公民身份证
启动 Visual Basic 编辑器,要在工程资源管理
号码统计表.xlsx,切换至“开发工具”选项卡,
器中创建放置程序代码的模块,执行“插入
在“代码”组中单击 Visual Basic 按钮,如下
模块”命令,如下图所示。
图所示。
单击
执行
Step03
编写提取性别函数
输入
在“模块 1”代码窗口中输入如右图所示过程
代码,用 Function 过程来自定义 Sex 函数,
并使用单分支选择语句 IF…Then 来判断使用
MID 函数提取的数字是奇数还是偶数,当提取
数字为奇数时表示男性,为偶数时表示女性。
Tip:
编写过程代码中的 Cvat()函数用于将数字字符强制转换为数值数据,Mid()函数与 Excel
中的 Mid()函数相同,用于从指定字符串中的指定位置开始截取指定位数的字符串。
Step04
使用自定义函数获取公民性别
Step05
查看函数识别结果
返 回 Excel 视 图 , 在 D3 单 元 格中 输 入
按【Enter】键,根据所选身份证号码判断出
“=Sex(C3)”,如下图所示。
当前公民的性别,然后利用自动填充功能向下
复制公式提取出各公民的性别,如下图所示。
输入
提取出的性别
12.1.2 自动将日期转换为中文星期数
Excel 为用户提供了将日期转换为星期几的函数 WeekDay(),使该函数得到的值为 1(星期天) 到 7(星期六)之间的整数。为了让所选日期直接转换为中文的星期数,用户也可以使用 Excel VBA 语言编写新的自定义函数来实现。
原始文件:实例文件\第 25 章\原始文件\签到表.xlsx
最终文件:实例文件\第 25 章\最终文件\签到表.xlsm
Step01
Step01
执行“插入模块”命令
Step02
编写获取中文星期数的函数过程
打开实例文件\第 25 章\原始文件\签到表.xlsx, 进入 Visual Basic 编辑器,执行“插入模块” 命令,如下图所示。
在“模块 1”代码窗口中输入如下图所示的过 程代码,调用 WeekDay 函数与 Choose 函数 编写获取中文星期数的代码。
输入
执
Tip:
编码中的 WeekDay()函数与 Excel 中的 Weekday()函数相同,用于获取指定日期的星期几数; Choose()用于根据第一个参数的值,从其后的列表中选择相应的参数值。
行
Step03
使用自定义函数获取星期数
Step04
查看函数运算结果
返 回 Excel 视 图 , 在 B3 单 元 格 中 输 入
“=Weekdayc(B2)”,如右图所示。
按【Enter】键计算出所选日期的中文星期数,
利用自动填充功能向右复制公式,可以快速计 算出其他日期的中文星期数,如右图所示。
自定义函数获取的星期数
输入
12.1.3 轻松计算孕妇的预产期和孕周数
一般一个孕妇的孕期是从最后一次月经算
您可能关注的文档
- 税务清结电子申系统【2010版】使用说明.doc
- 税法2015春习题.doc
- 税法练习题(五(答案版).doc
- 税法练习题--关税.doc
- 稳定土拌合机-体设计.doc
- 空中发动机故障断与分析.docx
- 空气调节用制冷术课程设计.doc
- 空间 立体图形其三视图.doc
- 空间与图形试题选2.doc
- 空间两异面直线离的 若干求法.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)