第13章 Excel不是万能的

有时我们也许过于迷信Excel的能力,任何问题都试图在Excel环境下解决,因此出现了各种关于数据分析和处理问题的复杂、甚至古怪的Excel解决方案。如频繁求助于多重IF函数嵌套,过于复杂的MATCH、INDEX函数联合,使用令人费解的数组公式,甚至求助于本无必要的VBA编程。事实上,对于很多数据分析和处理问题,与其花大量时间寻求复杂古怪的Excel解决方案,不如换一个思路,花一点时间,学一些Access知识,利用Access拓展Excel的能力,一定能让我们在数据分析和处理方面的功力大增!

Excel不是万能的,它至少在以下方面存在着能力上的限制。

13.1 多表联合数据分析和处理

Excel功能虽然很强大,但是却不善于进行多表联合操作!比如下面这个关于培训管理的例子。

如图13-1所示,有两个表格,位于工作表左侧的A1:D6单元格的员工名单表和位于工作表右侧的G1:I4的员工培训记录表。现在的任务是分析一下在所有员工中,哪些员工已经参加了培训以及分别参加了哪些培训?

alt

图13-1

假设我们想查看左表中员工工号为E003名叫“张三”的员工参加了哪些培训,我们首先可能想到的是使用Excel中的VLOOKUP函数。按照如图13-1所示,在E2单元格中输入公式“=VLOOKUP(A2,$G$1:$I$4,2,0)”,并向下复制。在公式中,A2是需要在右表中查找的关键字;$G$1:$I$4是作为“字典”的右表,之所以代表字典位置的$G$1:$I$4取绝对引用形式,是因为我们不希望在公式向下复制时,引用位置发生改变,从而取到错误的字典位置。

在设置好公式后,查看计算结果时会发现一个问题,在右侧表格中,张三明明参加了两门培训课程,可是左侧表格中的VLOOKUP函数却只能返回一个结果!

处理多表关联的问题是Excel的一个弱项,如果不用Microsoft Query工具,处理起来将会非常麻烦。而使用Access处理起来将非常快捷,并且Access比Excel中的Microsoft Query工具更加容易操作。

13.2 执行复杂的数据处理过程

如果不借助VBA,Excel很难重复执行复杂的数据处理过程。而很多普通Excel用户对VBA有一种天生的“代码恐惧症”,本书的目的不是为了加重他们的恐惧,而是换一种相对简单的方法帮助他们解决工作中的实际问题。Access中的宏可帮我们解决这个问题。在Access中,我们只需单击几下鼠标,便可以把我们的数据处理逻辑固化下来,并能在需要时重复执行!

13.3 大量数据的处理

我们知道,Excel同时处理上万条数据时速度就会明显下降,如果工作表中含有大量公式,其运算速度真的让人难以忍受。关于Excel处理大量数据速度变慢的问题,不能一个劲儿地抱怨Excel的能力,因为Excel本来就不是为了处理大量数据而设计的,Excel的功用主要是用来分析数据,处理大量数据则是数据库软件的强项。而对于我们这些非信息技术人员,Access作为一个小型桌面数据库管理软件则是我们进行大量数据处理的首选。

13.4 Excel与Access兄弟一家亲

你可能注意到过,Microsoft Office套件里还有一个重要的组件:Access。Access是世界上最流行的小型桌面数据库软件,它强大的数据处理能力在管理应用的许多方面发挥着重要作用。

我们不要被“数据库”这三个字吓到,认为只有计算机高手才能学会。其实并非如此,对于广大的Excel用户来说,可以简单地认为Access就是“高级版的Excel”,非常适合熟悉Excel的人员学习和使用。但是,由于传统的关于Access软件的书籍和培训的切入点的偏差,Access给大家造成了难学难懂的印象。

Access本质上是一种数据库管理软件。数据库,顾名思义就是存储数据的仓库,在Access中,我们可以存储许多类似于Excel工作表的数据表格。但是,与Excel不同的是:在Excel中,各个工作表中的数据一般是孤立的、互不联系的;而在Access中,我们则可以在所存储的表格之间建立各种关系,从而让Access发挥出更强大的数据处理能力。

对于Excel用户来说,借助Access处理Excel中的数据并不复杂,我们可以建立Access与Excel中数据的动态链接,并利用Access强大数据处理功能拓展Excel的能力。

如图13-2所示是Access自带的一个演示用的名为“罗斯文贸易”的数据库文件打开时的界面。“罗斯文贸易”数据库是一个用Access开发的商贸公司业务管理软件,透过这个软件的界面,我们大致可以了解:利用Access 我们能够开发出非常像样、实用的管理应用工具。在这里还想告诉大家,利用Access不但能开发出像样、实用的管理应用工具,而且更重要的是:在这个过程中,我们甚至不需要编写任何程序代码!这对广大的普通Office用户来说,绝对是一个好消息。

alt

图13-2

Access功能很强大,全面细致地讲解Access至少需要整整一本书的篇幅,但全面细致地介绍Access的方方面面并不是本书的主要目的。在本书中,我们主要以Excel作为切入点,介绍Access中最精华、最核心的部分,让读者以最少的时间投入获得最大的回报。

我们知道,Excel和Access出生于同一家公司:Microsoft,并且同是Microsoft Office组件之一。Excel和Access就像一对亲兄弟,它们之间可以做到无缝对接,Access可以极大地扩展Excel的能力,让Excel飞得更高。

从Excel用户的角度来讲,借助Access,我们能够解决以下Excel解决起来力不从心或者Excel根本解决不了的问题:

(1)十万行以上的数据处理。

(2)把多个结构相同的数据表格“拼接”到同一个工作表。

(3)对多个表格进行处理和分析。

(4)对数据表进行“增删改”操作。

(5)把数据处理结果自动生成为一个新的数据表。

(6)把复杂的数据处理过程固化下来以便重复执行。

(7)避免不符合逻辑的数据的录入。

(8)定时执行我们的数据处理操作。

(9)建立用户友好的界面等。

虽然Excel和Access同属Microsoft Office家族,但是它们却有着迥然不同的特质:Access是一种小型的数据库管理软件,它擅长的是数据处理,而Excel更擅长数据分析,将二者有效地结合起来,可以充分发挥这两个软件的巨大威力。许多人对Excel和Access软件整合应用所发挥出的威力体会如此之深,以致有人希望将二者合二为一,建议Microsoft开发出一个叫做Excess(Excel+Access)或者Acxcel(Access+Excel)的产品。

在国外,Access的商务应用已经相当普及,它在改善管理,提高工作效率方面发挥着重要的作用,在国内,Access的应用普及程度远远不如Excel,因此,如果我们能先人一步,提前掌握Access软件管理应用的精髓,就可能在以后的工作中节省大量的时间,掌握更多工作中的主动权。

微言微语


● 听说Excel和Access结婚了,大家说他们的宝宝叫Excess好呢,还是叫Acxcel好呢?不管叫什么,他一定是一个小超人!

● 精神病专科的大夫,报告给您一个情况,我们公司有很多青年男女,每天对着电脑上的一个有很多格子的软件一坐一整天,面色凝重,表情呆滞;有时格子突然没有了的时候还会大喊“天啊,我不想活啦……”目前这种情况很严重,您看他/她们是不是患上了某种精神上的疾病?我怎么去拯救他们?

● 应用Microsoft office软件打造精益办公室步骤:(1)理流程;(2)找机会;(3)做改善!——我们学的不仅是Office软件本身,更是一种高效工作的方法和理念。

● 在管理某些方面,也许你有很多绝妙的想法,也许你有很多创意,并且能清晰地把这些想法和创意用文字表达出来,但因为这些想法和创意需要一些计算机技术去实现,因此你感觉束手无策或者不得不等待永远很忙的IT部门的支援,最后往往不了了之!学习Excel深度管理应用吧!靠自己把创想变成现实!

● 有新员工感慨:上中学时不知道Excel是怎么回事儿,上大学时一直以为Excel就是那么回事儿,工作以后才知道:真的不能不把Excel当回事儿!