2023年12月26日发(作者:)
l72 福 建 电脑 函数和vbscript在日常办公中的分析应用 钟江华 (福建省漳州市农业学校福建漳州363000) 【摘 要】:本文从实际出发,列举了工作中解决问题的成功案例,就函数和vb脚本如何具 体应用到案例中进行了具体分析 . 【关键词】:函数vlookup if mod column row index宏vbscript 8列(p列) 在我们的日常办公巾.经常需要处理大量的 息存放在第一行的第九列(i列)到1数据。办公软件omce在数据的收集、汇总和分析 第8个学生的信息存放在第57列到64列. ……方面给我们提供了很大的便利 但是.仅仅只是依 所以须要用取余函数mod来定位:l天l为余数为零 靠omce提供的菜单功能有时候仍然无法达成我 其实是每个学生的第8列的信息(毕业证号列). 们的目的.这时候就需要用到ofifce提供的丰富 所以又用到了选择函数ifn综合考虑这些冈素就 的函数功能.甚至需要用到一些vb的脚本编程知 构造成功了下面这个公式: 识。下面是我平常工作中遇到的一些例子。 毕业生相片名册的处理 ~=vlookup(¥a2,sheet2 1¥a¥2:¥i¥1254,if(oord(column0,8)=O,8, mod(columnO,8)),true)。 、i事嚏童 { l 一. 虫 i l-一 }一 二、工资条的打印 …,I: 镛伸 I ¨ 1 糠,”带 I 一~l 裤州布l#∞‘巧一一l : " jl州 li l ‘00I 10l瑚It, 谢肚肚i 暂吨 i鼻 l ; 1 ~ 甯 H 3Im- n ㈣l l l …一 ∞ l5 I 矗 痒J・I 1 ~一 I ’* ㈣l∞一… } 叠 #)一 ¨B I; 擅, 市l 岢 序号 掌●号 l 。S,I竹呻0计 2 ∞3】 ∞№ , ∞ lm” 4 5 6 蛀名 l性料 出生年月 棘峨钟i 男 I1黼一5-I3) 穿农 { 男 l1竹0・10—10 皓璃^I 惫景勇I.舅 磷#杰} 男 女 I。9I-l2-1 l帕3一 掌崩 盎年 叁年 叁年 盎年 盎年 盎年 证书h孽 阜盘证号 注Ot2)3l拄03。l 职毕宰(21112)DO80 1 口012)31笠∞位 艇毕字(201 2)00802 ∞l2 I麓∞∞ 甚毕宰(2012)0080 ̄ 啪l2)3I m 职毕牢(2OI 2)00804 娌ol?)3I 09l2bt≈ 覃!毕宇(2012)0O805 葺!毕宰(2Gt2)00806 学校的工资管理要求打印工资条 工资条的 打印要求打印后能够裁成一条一条的.这需要每 O∞t 13l 韩噢晦i 7 3 Og3i越∞l4,4 睬睦#l 直 l22。m 5 {1弓技萍{ 虫 垒年 盎年 啪j2) 220 ̄OT 职毕罕c20t2)00807 f∞】2)3122m 织睾宰 20垤)0日蜘8 个人的工资条上都带有表头信息.而且两条信息 之间要求有一空行(如下图)。当然,工资条打印这 张表希望由工资总表生成以避免重复工作 下面 前一段时问.学校里做毕业生的相片名册(如 具体分析公式的构造过程: 上图) 由于数据量非常大.教务处的同事希望能 首先.所有的行号能被3整除的行都是空格, 够利用已有的毕业生名册里的数据.自动生成相 所以只要用到取余函数和取行号函数就可以了 片名册里的相应的数据 同事想到了Word提供的 (公式第一行):其次,所有行号被3除余l的行的 邮件合并的功能 可是.一页相片名册有8个学生 内容都固定是工资总表的第一行(公式第二行); 的信息.而毕业生名册的每一行只有一个学生的 最后.行号被3除余2的行的内容对应于工资总 信息.怎么办?同事找到了我。 表的第2、3、4……行,利用index函数进行搜索和 这里需要解决的是:如何把原来每行存放一一 引用(公式第三行) 整个公式合成如下式: 个学生的信息通过函数计算的方法转换成每行按 顺序存放八个学生的信息 首先须要插入新的工作表sbeet3.然后在新 的工作表巾利用vlookuD函数搜索单元格区 sheet2 1¥ai{;2:¥i¥1254域的第一列。然后返同该区域 =if(rnod(row0,3)=O,””, if(mod(rowO,3)=l,上资总表!a¥1, index(_.1i总表!Sa:¥s,(rowO+4)/3-c【'I【Jln|1O))) 三、学生各种出勤的统计 班主任工作须要对学生在各种集体活动巾的 }{席情况有充分的了解和统计以帮助我们随时掌 相同行相应单元格r1]的值 闲为第二个学生的信 }
福 建 电 脑 173 b4—8h831+(c4一j5c¥31 7”,再复制公式。 握学生的动态,确定重点关照对象。这个统计数据 式“Sd¥3+(更是期末给学生德育评分的重要根据。为了对这 这里应 注意公式巾绝对地址的引用。 2、表格的美化 个评分做到公正、公平,我想到了利用如下图所示 表格的美化不只是为了单纯的视觉效果.冈 电子表格对班级学生的晚自修、早操、卫生区值日 情况进行统计。 下面我谈谈这个电子表格的具体实现。 为数据量较多.单元格较小。我还希望借助表格的 美化来更好的定位单元格。在如上 所示的电子 表格rf1.我在从第3行开始的奇数行上填充上淡 】1_ 。 瑚鑫 #}#: 程 , j {蛙奢#沈£ 1 ;£ 17 } 0弹 弥l #辣斗錾 薜 珏 强l 姑并轻寐 嚣张 薜 蓝色.从第4行开始的偶数行上填充上浅青绿色。 薪鼻蜂样%月摩囊墓矗牟吾簟R屠聋I镶女目挚_毽l 挂尊磷舞巧蕈薏增饵§茹毒d熹暑俸童 拜碍车 萎∞ 第 意 宽 1、统计项目的自动填充 统计项目的自动填充是最简单的,只要在e3 至e5单元格里依次填上“自习”,“早操”,“卫生”, 然后选定这3个单元格拖动填充柄即可快速填 充。 因为每个工作日有三个统计项目.每周有五 个工作日.也就是说每周需要l5行来存放统计数 据 体现在本电子表格就是c3:c17单元格为1, cl8:c32单元格为2,c33:c47单元格为3…… c271:c285为19。如此多的内容靠手工填充显然 是不现实的.也没有充分利用电子表格的自动功 一一~一能。如何实现?首先以自动填充的方法在a3:a287 一一一填充1到285的数字序列 其次填充星期这列的 数字,因为每天有三个统计项目,所以b列的数字 序列为(1、1、1……5、5、5、1、1、1……5、5、5)。从数 字序列(1、2、3……13、14、151到数字序列(1、1、1 ……5、5、5)的映射,可以用ceiling函数来实现;但 是如何让16以后的数字序列重新映射到f1、1、1 ……5、5、5)?我想到了求余函数和判断函数。把这 两个函数加入公式之后.最后的具体公式为“if (mod(ceiling(a3/3,1),5)=0,5,mod(ceiling(a3/3,1),5))”。 第三.填充周次这列,也就是实现从数字序列(1、 2、3……283、284、2851到数字序列f1、1、1……19、 19、19)的映射。这需要用到取整函数。这类的函数 有int、round、ceiling和floor这四个函数,它们都 可以帮助实现这两个数字序列的映射.但由于取 整规则是不一样的.公式也就不一样 这里我采用 了ceiling函数,具体公式为“c3=ceiling(a3/15。11’’。 最后.复制公式,就可在整个C列填充上相应的周 次。第四.工作日的填充需要用到a、b两列。须要 先在d3单元格填上第一周第一个工作日“2月16 日”.下面的单元格对比d3单元格相差的天数和 周数.加上差值即可。具体为在d4单元格应用公 整个表格有二百多行,当然不能一行一行地做,表 格的自动套用格式功能的效果也不能让我很满 意.于是我想到了利用excel自带的visual basic 编辑器进行颜色的自动填充。下面的循环语句就 可以实现这个功能 一 一 一一~对于没学过编程的人.上面的语句完全手工 一一一一 一一 编写可能有点难, 其实,可以利用“宏”。大家知道, 宏是微软公司为其omce软件包设计的一个特殊 功能.它是将一系列的命令和指令组合在一起,形 成一个命令.以实现任务执行的自动化。目的是让 用户文档中的一些任务自动化。[1]office中的Word 和excel都有宏 可创建并执行一个宏.以替代人 工进行一系列费时而重复的excel操作 在这里.只要将填充第3行和第4行的行为 录制为宏.然后在visual basic编辑器中修改这个 宏。将rows(3)改为rows(i1,rows(4)改为rows(i+1), 在第一行加上语句“for i一3 to 292 step 2”.最后 一行加上“next”即可。 同样道理.可以借助宏和visual basic编辑器 把单元格左右两边框的颜色分别设为玫瑰红和淡 紫色 以下为具体的代码 fnr i=6 to 43 step 2 columns(i).select selection.borders(xldiagonaldown).1inestyle=xlnone selection.borders(xldiagonalup).1inestyle:xlnone with selection.borders(xledgeleft) .1inestyle=xlcontinuous .weight=xlthin .colorindex=39 (下转第1 82页)
182 Dim C As Double 2 3 4 5 6 7 8 9 福 建 电脑 2013年第2期 以《基于web的图书管理系统》为例:实验要 If(a>0 And b>O)Then c=c/a 求:利用((JAVA语言》、《软件工程》和《软件测试》 所学知识完成系统开发 利用所学专业知识对系 统进行压力测试、兼容测试和数据库测试,并对系 统调优 在软件测试实训课程巾始终贯穿PSP过 程和TSP过程.它有助于学生职业能力和职业素 End if If(a>l or c>1)Then c=c+1 End if e=b+c 养的培养 我院按照“2+1+1”培养模式 有一年时间学 生在企业实习.使学生参与项目开发整体流程.包 括软件工程过程和测试过程 在此过程中.培养学 生的团队合作和沟通能力.使学生既巩固理论基 础知识。又锻炼测试能力。 3.结束语 人才的培养是一个综合的过程 在实践教学 体系中,采用项目教学,加强实践环节的考核,对 实践中表现突出的学生给予多种形式的肯定和鼓 励。同样.良好文化环境是保证人才健康成长的不 可忽视的软环境。 图2流程图 参考文献: 实验要求:使用语句覆盖、判定覆盖、条件覆 【1】田小霞.优化《软件测试技术》的教学【『】.电脑学习, 盖、判定/条件覆盖、组合覆盖和路径覆盖方法设 2011,(02) 计测试用例 【2兰景英.应用型软件测试人才培养模式探索与实践U】.2】 (04) 综合实验采用“项目驱动”教学 项目基础要 潍坊教育学院学报,2011,3】朱少民.软件测试方法和技术.北京:清华大学出版社, 综合多门课程的知识.项目执行培养学生分析问 [题和解决问题的能力.提高学生动手能力。 2008 (上接第173页) selection.borders(xledgetop).1inestyle=xlnone selection.borders(xledgebottom).1inestyle=xlnone with selection.borders(xledgeright) .格的函数和vb脚本能够帮助我们更好的完成平 时的工作,而且,只要我们善于思考,其实函数和 脚本也不是那么难的。 参考文献: [1]word宏病毒清除技术.金山反病毒资讯网:www.pcon— 1inestyle=xleontinuous weight=xlthin colorindex=38 ..ine.con.cr1. 从上面的几个实例中,我们可以发现,电子表 l[2]excel帮助系统..microsoft excel visual basic参考.
发布者:admin,转转请注明出处:http://www.yc00.com/web/1703581770a1304197.html
评论列表(0条)