APP下载

基于短信平台与Excel软件的会议通知系统的设计

2018-05-14张涛杨瑞

数字技术与应用 2018年2期
关键词:系统设计

张涛 杨瑞

摘要:人员通知是会议组织工作中的重要环节。通过借助信息手段和普通办公软件,设计一款基于短信平台与Excel软件的会议通知系统,能够高效、低成本的实现参会人员及时通知和统计的需要,提高工作效率。

关键词:系统设计;会议通知;短信平台

中图分类号:F232 文献标识码:A 文章编号:1007-9416(2018)02-0132-02

人员通知是会议组织工作中的重要环节。通过借助信息手段和普通办公软件,可以设计一款简单易用的会议通知系统,高效、低成本的实现参会人员及时通知和统计的要求。

1 系统设计的载体选择

1.1 会议通知途径的比较

目前,会议通知的手段已经信息化,信件投递的方式基本淘汰,一般只作为公文式通知的载体。信息化通知的主要途径有电话通知、短信通知、网络通知(如QQ群、微信群)等。电话通知一般适用于小型会议,对于人数众多的大中型会议,电话通知显然耗时耗力;网络通知是目前比较流行的日常事務性通知途径,可以用于人员众多的会议情况,但也有一些缺点,如网络通知必须对方打开或使用一定的网络软件,必须事先建立通知人员群组,对于不使用网络软件、不方便入群或无法建群的人员就存在局限性。

短信通知有着其独特的优势:第一,方便快捷。只要知道对方号码,编辑好文字,就可以立即群发,省时省力,这点优于电话通知;第二,查收及时。短信作为目前最普遍、最基本的手机功能,不需要使用者有多高的技巧,也不需要借助其他软件,可以立即被接收查看,适用人群广泛,这点优于网络通知。当然,短信通知也有一定的缺点,如需要收费、手机端操作繁琐等。

一般而言,会议通知的花费问题占会议费用很小部分,基本可以忽略。手机端操作繁琐的问题可以通过使用短信平台的方式,将狭小的指尖屏幕扩展为电脑屏幕,将局促的手机操作转换为较为舒适的键盘输入。同时,短信平台可以导入通讯录、做好人员分类、导出号码和回复内容等功能。目前,笔者选用江苏电信“企信通”(http://1183300.js.vnet.cn/)作为会议通知的短信平台。主要考虑:第一,平台月发送量大(15000条/月),能够满足月内多次大型会议、多次通知的需要;第二,平台由国内主要电信运营商开发维护,对公性质强,稳定可靠,具有严格的申请资质审核;第三,以固定电话作为计费号码,方便办公费用结算,适合公务性会议通知。

1.2 统计软件的选择

明确了会议通知发送的途径问题,就会紧接着涉及到通知反馈和统计问题。

在系统设计上,主要想实现这样几个功能:第一,参会人员数量的统计。具体参会人员多少、请假多少?一般而言,会议主办方不太关心请假事由,而是重点考虑来或不来的问题。因此,在设计中对请假事由不做区分。第二,发出通知后,能够快速检索出未回复短信的人员,并及时再次发送。这一问题在短信通知中是比较普遍的。第三,标记签到。对于较为正式的会议,往往会实施签到制度,要实现根据短信人回复内容自动标记在签到表备注栏内。

基于以上设计要求,考虑使用数据统计软件。大型会议人员众多,如果人工逐条统计参会人员反馈情况显然耗时耗力,通过导出短信平台数据,运用数据统计软件是最方便快捷的方法。Excel办公软件安装广泛、功能强大,又比专业数据库软件简单易学,适合一般办公人员掌握使用。

2 会议通知系统的设计

2.1 建立参会人员通讯录数据库和反馈库比对机制

短信通知的前提是知道对方的手机号码,从而建立通讯录。在Excel中首先建立通讯录数据库,为方便后续Excel函数的使用,数据库第一列为号码列,第二列为姓名列。同时,为方便在一个Excel文件中操作,可分多个工作表,第一个工作表可命名为“通讯录数据库”。

第二个工作表,作为短信平台导出短信回复数据使用,可命名为“反馈导入库”。在江苏电信企信通短信平台中,可以导出Excel格式的短信回复数据,包含回复号码、回复的时间、回复的内容等,但唯独没有回复人的姓名。因此,需要通过VLOOKUP函数,实现自动显示回复人姓名的功能。

VLOOKUP函数是Excel中的一个纵向查找函数,功能是按列查找,最终返回该列所需查询列序所对应的值。语法:

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

具体参数的含义及输入数据类型如图1所示:

我们特意在第一个工作表“通讯录数据库”中,将号码放在第一列、姓名放在第二列,就是为了方便在VLOOKUP函数中设置返回数据查找区域的列数(col_index_num),它必须是正整数。

将第二个工作表“反馈导入库”的第一列A列作为回复号码列,直接从短信平台导出的短信回复excel文件中粘贴过来,需要注意的是必须是数字格式。第二列B列,使用VLOOKUP函数,通过比对第一个工作表“通讯录数据库”中的号码,自动显示号码主人的姓名。在B1格内具体函数输入是:

=VLOOKUP(A1,通讯录数据库!A:B,2,FALSE)

A1格是回复的号码,函数是将A1中的号码,同第一个工作表“通讯录数据库”中的A(号码)列比对,如果精确匹配(FALSE),就显示A(号码)列后第2列数据。需要说明的是,第2列的计算是把A(号码)作为第1列的,因此,A(号码)列后的第2列是指B列,而不是C列。B列是姓名,因此,一旦电脑找到匹配的号码,就会在第二个工作表B1格内显示对应的姓名。通过下拉方式,可以将函数赋予B1下的每一格,从而显示全部回复号码的姓名。

2.2 自动标记短信回复情况的设计

知道了回复号码的姓名,就需要知道哪些人没有回复,以便及时应对。这里可以通过设计自动标记的方式,加以直观的显示和统计。具体做法是:

在第一个工作表“通讯录数据库”的C列,巧妙的使用COUNTIF函数。COUNTIF函数是对指定区域中符合指定条件的单元格计数的一个函数。语法是:

COUNTIF(range,criteria)

其中,参数range是要计算其中非空单元格数目的区域,criteria是以数字、表达式或文本形式定义的条件。

运用COUNTIF函数,我们将第二个工作表“反馈导入库”中A列的号码与第一个工作表“通讯录数据库”A列中的号码比对,COUNTIF函数能够显示出大于0结果的,就是已经回复的;显示0结果的,就是没有回复的。具体在第一个工作表“通讯录数据库”C1格输入:

= COUNTIF(反馈导入库!A:A,A1)

通常得到的结果是0(没有回复),或1(找到1个号码,回复)。下拉C1格,就会得到C列结果。

使用COUNTIF函数的另一个好处在于,可以发现同一个号码多次回复的情况。在现实会议安排中,参会人临时变更参会意愿的情况经常发生,如果不注意很有可能耽误事情。如果某个参会人使用同一个号码,多次回复,COUNTIF函数显示的结果就会大于1,回復了几次就显示数字几,如回复了两次短信就会显示2。通过观察C列显示的数字,可以直观看到短信回复情况。

2.3 对回复情况标记的运用

2.3.1 统计未回复人员的数量

C列中COUNTIF函数显示结果是交错的,当然,可以通过排序的方式使结果相对集中,但人为观察结果毕竟容易出错。一般而言,会议主办方更关心有多少人没有回复短信,因此,可以再次利用COUNTIF函数统计C列中0的数量,从而得到未回复人员的数量。可以随机在第一个工作表“通讯录数据库”的某个位置,如H1格,输入函数:

=COUNTIF(C:C,0)

得到的值就是未回复人员数量。

2.3.2 针对未回复人员再次发送的设计

对于未能及时回复的人员,可以考虑再次发送短信。在江苏电信企信通平台中,能够单个检索姓名或号码,完成发送。但这种方式需要逐一检索、逐一添加,形成号码串后再发送。显然,这种方式不仅耗时耗力,还容易出错。设计思路是:通过利用未回复的标记,自动形成号码串,直接复制粘贴到企信通中,完成再次发送。

首先,使用最常用的if函数,将未回复的号码分离出来。由于企信通中的号码串以逗号(,)隔开,还需要在分离出的号码后自动加上逗号。具体做法是:

在第一个工作表“通讯录数据库”D1格输入if函数,内容是:=IF(C1=0,A1&”,”,””)。利用C列的回复标记,没有回复的号码(也就是C列格内显示为0)就会显示在相应的D格内,而已经回复的(也就是C列格内显示大于0)则显示为空白。从而实现未回复号码的分离。

第二,形成未回复号码的号码串。

将第三个工作表命名为“未回复号码汇总”。利用PHONETIC函数实现合并第一个工作表“通讯录数据库”D列的号码。PHONETIC函数功能是实现多个单元格内容的合并,同时可以忽略掉空白单元格。语法:

PHONETIC(reference)

参数reference就是单元格区域。但是,如果直接在第三个工作表“未回复号码汇总”的某个单元格内,如A1格,输入“=PHONETIC(通讯录数据库!D:D)”是没有任何作用的。因为PHONETIC函数不仅会忽略空白单元格,还会忽略任何公式生成的值。显然,“通讯录数据库”D列中的号码是我们通过IF函数得到的,PHONETIC函数不能直接使用。

这时,可以将“通讯录数据库”D列的号码复制后,选择“值”粘贴的方式,粘贴到E列,从而去掉公式属性,变成普通的数据值。然后使用PHONETIC函数,比如还是在第三个工作表“未回复号码汇总”的A1单元格内输入:

=PHONETIC(通讯录数据库!E:E)

就会得到一个多个号码、中间用逗号隔开的号码串,直接复制这个号码串,粘贴到企信通短信发送号码栏内,就能准确实现对未回复号码的再发送。

2.4 请假标记的实现和使用

会议通知很关注的信息就是参会人员请假情况。通常会议都实施签到制度,在设计会议通知系统时就考虑将请假情况自动标记在签到表上,既一目了然,又能避免手工标注可能出现的错误。

2.4.1 根据短信回复内容标记请假

将从短信平台中导出的短信回复内容复制粘贴到第二个工作表“反馈导入库”的D列,和回复的号码一一对应。在这个表的C1格输入公式:

=IF(E1=1,”请假”,””)

下拉C1格,使公式依次填入一定数量的C列单元格。这样,工作人员可以逐条阅读短信内容,如果表明不能参会,就在E列对应单元格输入“1”,则对应的C列单元格内就会填入“请假”两个字。

这样的设计主要是从礼节考虑,更加方便的是可以在短信中要求“参会直接回复0,请假直接回复1”。这样通过短信回复内容,直接就能区分参会与请假,手动输入的环节也能省去。

2.4.2 在签到表中标记请假

第二个工作表中标记的请假根据的是短信回复先后顺序,通常会议签到表的顺序有自己的逻辑,如职务、主次、部门等。因此,可以根据需要先预制好签到表模板。

设计中将预制签到表放在第四个工作表,命名为“签到表”。“签到表”A列可以按照一定的逻辑填入参会人姓名,B列空白供签到使用。C列作为备注栏,用于自动填入“请假”两个字。继续使用VLOOKUP函数,在这个工作表的C1单元格输入公式:

=VLOOKUP(A1,反馈导入库!B:C,2,FALSE)

通过比对第二个工作表和第四个工作表的姓名列,显示“请假”标记。这样,随着我们在第二个工作表E列中输入“1”,“请假”两个字就可以自动标记在第四个工作表“签到表”的备注栏了,直接打印出来即可。

更加完善一些的考虑是,可以配合使用IFERROR函数。将第四个工作表C1单元格公式修改为:

=IFERROR(VLOOKUP(A1,反馈导入库!B:C,2,FALSE)&””,””)

IFERROR函数会先判断VLOOKUP函数找到的值是否正确,因为第四个工作表“签到表”出现的姓名,在未回复情况下是不会出现在第二个工作表“反馈导入库”中的,这时就会出现#N/A错误。IFERROR函数可以有效过滤这种情况,当签到表中的姓名没有回复,备注栏保持空白。

基于短信平台与Excel软件的会议通知系统,有效解决了大型会议人员通知在统计、反馈等方面繁琐复杂的难题,设计运用的载体简单、高效,普遍适用性强、几乎无使用成本,易于一般工作人员掌握使用。

猜你喜欢

系统设计
基于UML技术的高校贫困生管理系统建模分析