免编程设计编制实用软件的探索
作者:卢台生
来源:《电脑知识与技术》2013年第24期
作者:卢台生
来源:《电脑知识与技术》2013年第24期
摘要:Excel函数强大的功能能够有效地提高个人办公的质量和效率。通过对体育兑奖机软件的设计与编制,实现了IF、And、Or、Count、Countif等函数的综合运用,创造性的应用“IF函数的接力设置法”突破了IF函数嵌套次数的限制,佐证了免编程设计编制实用软件的可行性。
关键词:现代办公;免编程;Excel函数应用;实用技能
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)24-5441-06
根据工作需要,运用软件编程来提高工作质量和工作效率,对于计算机专业人员而言不会有较大的困难。但是,对于非计算机专业的人员而言,这可是一个难题,往往需要计算机专业人员的帮助才能够完成。而由计算机专业人员单独来编制软件,又受到软件应用领域的其它专业知识和经验的限制,还必须有相应专业的人员的配合和支持。软件开发的周期较长,时效性
受到限制。能否让大多数非计算机专业人员都能够根据自己专业和工作的需要,跨越软件编程的要求,直接利用EXCEL函数自行设计编制实用的软件,及时解决工作中遇到的问题呢?答案是肯定的。EXCEL函数强大的功能完全能够胜任个人办公中涉及的数据处理问题,能够有效地提高工作质量和工作效率。利用EXCEL函数自行设计编制实用软件,关键是要掌握各种EXCEL函数的用途和综合运用。体育兑奖机软件的设计与编制,佐证了免编程设计编制实用软件的可行性。
1 设计兑奖机的目的
通过兑奖机的设计,进一步探索EXCEL函数的强大功能,熟悉IF、And、Or、Count、Countif等函数的综合运用[1,2,3,4],为今后处理现代办公事务、自行编制实用软件奠定良好的基础,促进EXCEL函数的应用推广。
2 设计兑奖机的任务
这里,以体育超级大乐透兑奖机的设计为例。根据超级大乐透的游戏规则,彩民从01—35共35个号码中选取5个号码为前区号码,并从01—12共大乐透开奖结果中奖规则12个号码中选取2个号码
为后区号码组合为一注进行的投注叫基本投注。当基本投注符合下表(表1)中的“中奖条件”时,即可赢得对应的奖金。
因此,设计兑奖机的任务是:
2.1 设计兑奖机的界面
2.2 设置函数自动判断中奖号码和中奖等级
根据中奖条件与奖金的对应关系,选择运用恰当的函数进行判断并给出中奖信息;
1)如果前区5个号码和后区2个号码与开奖号码全部相同,则显示“一等奖”;
2)如果前区5个号码与开奖号码全部相同,后区有1个号码与开奖号码相同,则显示“二等奖”;
3)如果前区5个号码与开奖号码全部相同,后区没有号码与开奖号码相同,则显示“三等奖”;
4)如果前区有4个号码与开奖号码相同,后区2个号码与开奖号码全部相同,则显示“四等奖”;
5)如果前区有4个号码与开奖号码相同,后区有1个号码与开奖号码相同,则显示“五等奖”;
6)如果①前区有4个号码与开奖号码相同,后区没有号码与开奖号码相同,或②前区有3个号码与开奖号码相同,后区2个号码与开奖号码全部相同,则显示“六等奖”;
7)如果①前区有3个号码与开奖号码相同,后区有1个号码与开奖号码相同,或②前区有2个号码与开奖号码相同,后区2个号码与开奖号码全部相同,则显示“七等奖”;
8)如果①前区有3个号码与开奖号码相同,后区没有号码与开奖号码相同,或②前区有2个号码与开奖号码相同,后区有1个号码与开奖号码全部相同,或③前区有1个号码与开奖号码相同,后区2个号码与开奖号码全部相同,或④前区没有号码与开奖号码相同,后区2个号码与开奖号码全部相同,则显示“八等奖”。
2.3 设置提示语显示屏
显示屏应该显示两种情况:
1)如果彩民中了奖,将显示“恭喜中奖!”;
2)如果没有中奖,将显示“感谢你对中国体育事业的支持!”。
3 兑奖机的设计与制作
3.1 设计并制作兑奖机界面(如图1所示)
为了使计算机在人们输入1位数字的号码时能够自动地在其左边添加0,可以选中所有需要输入号码的单元格,选择其右键菜单中的“设置单元格格式”,在“单元格格式”对话框中“数字”选项卡下选择“自定义”,在“类型”下方的文本框内输入2个数字:00 ,最后单击“确定”,关闭对话框即可。
3.2 在中奖号码区设置公式
1)设置判断前区中奖号码的函数
为了判断出前区的中奖号码,先在J8单元格输入函数:
=IF(OR($A$4=A8,$B$4=A8,$C$4=A8,$D$4=A8,$E$4=A8),A8,"")
上式中的$A$4、$B$4、$C$4、$D$4、$E$4是开奖号码前区的五个号码所在的单元格,它们的行号和列号左边加美元符“$”是为了引用其绝对地址,确保下面复制该函数时这些地址保持不变。这个嵌套函数的作用是:只要A8单元格内的号码与前区开奖号码5个中的任意1个相同,则显示A8单元格内的号码,否则显示空白。
向右拖动J8单元格右下角的拖拽柄,将函数复制到右边的K8、L8、M8、N8四个单元格。同时选中J8、K8、L8、M8、N8五个单元格,向下拖动N8单元格右下角的拖拽柄将函数复制到下方的若干单元格(可以复制到任意一行)。
2)设置判断后区中奖号码的函数
用上述相同的方法先在P8单元格输入函数:=IF(OR($G$4=G8,$H$4=G8),G8,"") 。这个嵌套函数的作用是:只要G8单元格内的号码与后区开奖号码2个中的任意1个相同,则显示G8单元格内的号码,否则显示空白。
选中P8单元格将其中的嵌套函数复制到右边的Q8单元格。再同时选中P8、Q8两个单元
格,向下拖动Q8单元格右下角的拖拽柄将嵌套函数复制到下方的若干单元格。
3)统计前区中奖号码个数
从表1中可以看到,中奖等级与中奖个数有关。因此,需要分别统计出前区和后区中奖号码的个数。在兑奖机界面右边空白的区域选择W8单元格,在该单元格内输入函数:=COUNT(J8:N8)。这个函数的作用是:统计中奖区域J8:N8中号码的个数。
4)统计后区中奖号码个数
在W8单元格右边的X8单元格内输入函数:=COUNT(P8:Q8)。这个函数的作用是:统计中奖区域P8:Q8中号码的个数。
同时选中W8和X8单元格,向下拖动X8单元格右下角的拖拽柄将嵌套函数复制到下方的若干单元格。
3.3 在设置中奖等级和奖金区域设置公式
1)判断中奖等级
由于IF函数最多只能嵌套7个,所以为了判断出中奖等级,需要使用“IF函数的接力设置法[5]”。先在S8单元格输入下列函数:
=IF(OR(AND(W8=2,X8=2),AND(W8=3,X8=1)),"七等奖",IF(OR(AND(W8=3,X8=2),AND(W8=4,X8=0)),"六等奖",IF(AND(W8=4,X8=1),"五等奖",IF(AND(W8=4,X8=2),"四等奖",IF(AND(W8=5,X8=0),"三等奖",IF(AND(W8=5,X8=1),"二等奖",IF(AND(W8=5,X8=2),"一等奖",Y8)))))))
接着在Y8单元格输入函数:
=IF(OR(AND(W8=3,X8=0),AND(W8=2,X8=1),AND(W8=1,X8=2),AND(W8=0,X8=2)),"八等奖","")。
上述嵌套函数的作用是:依次判断W8和X8中的中奖号码个数,如果符合某等奖的中奖条件,则显示该等奖的名称,否则显示空白。
2)设置中奖奖金
在U8单元格输入下列函数:
=IF(S8="八等奖","5元",IF(S8="七等奖","10元",IF(S8="六等奖","100元",IF(S8="五等奖","600元",IF(S8="四等奖","3000元",IF(OR(S8="一等奖",S8="二等奖",S8="三等奖"),"浮动奖",""))))))。
上述函数的作用是:根据S8单元格内显示的中奖等级,显示出对应的中奖奖金。
3.4 设置显示屏中奖提示语
1)判断是否中奖
为了根据是否中奖分别显示出不同的中奖提示语,需要在中奖等级列或中奖奖金列统计出中奖信息数据。现选择在中奖奖金列U列统计中奖信息数据。
先在U2000单元格输入函数:=1992-COUNTIF(U8:U1999,"")。COUNTIF(U8:U1999,"")函数的作用是:统计中奖奖金区域U8:U1999中空单元格的数字,如果全部为空白,即无中奖奖金,则显示1992。此时,1992-COUNTIF(U8:U1999,"")的值为“0”;相反,当中奖奖金区域有中奖奖金时,该值大于或等于1。
注:选择U2000单元格是为了远离数据区域,一般彩民所买注数不会超过2000注,上式中的“1992”是U8~U1999之间单元格的数目(1999-8+1=1992)。
2)在中奖提示语显示区域(S2:U5)输入函数:
=IF(U2000>=1,"恭喜中奖!","感谢你对中国体育事业的支持!")。这个函数的作用是:当U2000>=1时,即中奖时,屏幕上将显示“恭喜中奖!”;否则,显示“感谢你对中国体育事业的支持!”。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论