作者:Luke Chung

原文连接:Microsoft Access versus Microsoft Excel for Data Analysis and Reporting

在Excel与Access之间抉择

Microsoft Office的高级用户经常问我们,为什么要使用Access?什么时候应该使用Access,而不是Excel?特别是当他们Excel用起来非常顺手的时候。以下是我们的观点。

给信息工作者赋能

我们认为,这不是二选一的问题。它们各自都有各自的优势,并且天然的相辅相成。了解它们的差异,并在不同的情况下,选择适合的一个的人,可以为他们自己以及所属的企业带来竞争优势。

Microsoft Office产品为个人(微软称之为信息工作者)赋能,使其可以独立完成任务。这样,你就可以充分利用你对工作内容的理解,为要做的事情弄一个解决方案。这要比你将问题提交到”IT专业人士”那里,去寻求帮助而高效得多。因为你需要让他了解你的技术需求,而他很可能对你的业务背景一无所知。当他还没有搞清楚状况,就去创建技术解决方案,结果可想而知。

Microsoft Excel的优点

Excel的学习曲线非常短,所以使用Excel很容易,而且生产效率很高。需要IT人员创建Excel的情况很少,信息工作者们可以自己做。

Excel可以轻松的存储数据,执行数值计算,格式化单元格,调整布局,生成结果或报告分享给他人。还有一些高级功能,例如,分类汇总,数据透视表,数据透视图,分析工具包,以及许多模板。这些高级功能使得Excel能够轻松完成各种任务。它甚至可以与SQL Server的分析服务(商业智能)集成,获取数据后,调整一下布局,字体,颜色等,得到你想要的报表。

Microsoft Excel的缺点

不幸的是,Excel的灵活性是有代价的。虽然创建公式,引用单元格,复制粘贴数据,以及将多个工作表和工作簿链接在一起都很容易,但随着工作变得越来越复杂,Excel数据变得越来越难管理。诚然,Excel是创建一次性分析的理想选择,但是随着时间的推移,数据会不断增长,业务会不断演化,Excel会变得问题多多。当新的行和列被添加进来后,汇总区域和公式可能需要修改或新增,数据和公式如果更新不一致,会导致错误的结果和决定。

Excel面临的挑战在于,随着时间推移,数据量不断增加,要准确的维护它们,是非常有难度的。

Microsoft Access的优点

Excel专家一般很难理解Access提供的那些Excel并不具备的功能。Access有以下几个特性:

  • 通过多个表让数据结构化和规范化
  • 可扩展性:可以自由的增加更多的数据记录
  • 数据和参照完整性
  • 查询和报表
  • 通过宏和VBA代码模块自动化

表结构和验证

使用Access,你可以很容易做到,将信息存储在一个地方,而在多个地方引用它。例如,你可以将客户信息(可能有客户姓名,地址,电话号码,电子邮件等)保存在客户表中。而这些信息可能会在其他的地方(可能是查询,窗体,报表等)被引用。如果客户的信息发生变化了,新的信息会在所有被引用的地方自动更新。设计表的时候,你会加入一些约束限制,例如设定字段为数值型,日期型,或者文本型等,从而获得比电子表格更高质量的数据。而设定字段类型仅仅只是一个开始。

Access中的记录可以自由的增减

Access与Excel最大的区别就是,在Access中,记录的增减是自由的。只要设计得当,新的数据记录可以随时不断的添加进来,而不需要填加任何新的字段(列)。所有的查询,窗体和报表会照常工作,而无需任何调整。当然,你可能会使用不同的筛选条件,但出来的结果一定是一致的。新的数据添加进来后,不需要重新测试或调整单元格公式。这样每年,每季度,每月,每周或每日,你都能生成准确的报告。

数据和参照完整性

有句话说“垃圾进,垃圾出”(garbage in – garbage out)。Access为规避这一点提供了许多工具,来保证数据质量。在Access表中,你可以很容易将查阅列表和验证规则应用于单个字段(列)和记录上。在窗体上做数据输入的时候,你还可以添加额外的规则来响应用户的选择和事件。Access还提供表间的参照完整性,以确保数据在多个表中有一致的定义。

查询和报表

你可以使用Access的查询和报表来切分数据,并以详细或者汇总的形式来呈现它,而不用去考虑数据是如何存储的和排序的。它提供了大量的功能和灵活性来分析和呈现结果。使用分组功能时,聚合信息可以随着数据的变动而自动增减。

通过宏与VBA模块进行自动化

在Access宏或者VBA模块中,你可以使用Docmd.TransferSpreadsheet命令将数据从Access表或查询中导出到Excel(使用acExport选项)。

使用acImport选项,TransferSpreadsheet命令还可以将Excel中的数据导入到Access表。

实际上,如果使用Office VBA自动化,你可以在Access中打开一个Excel文件,并将数据写入到指定的单元格,自动的更新Excel中的数据。

Microsoft Access的缺点

Access最大的缺点就是,做为一个数据库,它需要你掌握更多的知识和技能才能使用。搞清楚如何定义规范化的表,将他们连接在一起,并结构化好数据,使其易于编辑,查询和生成报表,这些内容对于初学者来说是很有挑战性的。但是这是设计所有关系型数据库,都需要面对的问题,一旦掌握了,你就可以将其应用于其他数据库。

构建数据库,创建查询和设计报表布局的学习曲线可能看起来相当艰巨。这肯定要比在Excel单元格中敲入数据要复杂得多。另外,很可能让你感到十分沮丧的是,在Access中,你无法轻松的复制和粘贴单元格区域,你也无法在Access的报表结构中做任何特别的调整。(例如,想通过特殊字体或备注来突出显示某个值或者某一行)虽然你可以利用Access的VBA代码模块来做定制化,但是相对于Excel所见即所得(WYSIWYG)的设计来说,你要花费更多的精力。此外,一些数据分析功能,比如power pivot,在Access中是没有的。

结论

Excel可以非常灵活的生成个性化的报表,并且可以在任何地方自由的设定格式或添加批注。Access回报给你的则是,一旦设计完毕投入使用,它就能提供长期的数据准确性和一致性,毕其功于一役。对于一次性的分析来讲,使用Access当然就是用牛刀杀鸡,但如果数据需要长期维护,报表需要定时生成的话,使用Excel往往会遇到困难。大多数企业都有许多“相似”的Excel表,相互之间只存在一点点细微的差异,但是随着时间的推移,很快它们就变得不一致。精心设计的Access数据库就不存在这种难以管理的挑战。也就是说,Access和Excel都有其优点和缺点。

最佳实践就是将Excel和Access两者的优点结合起来,形成一个混合解决方案,将Access中的数据导出或复制到Excel。Access数据库的数据参照完整性,严格定义的数据以及有质量保证的数据输出,再结合适宜临时分析的Excel,可以让你充分利用两者的优势。而使用自动化流程,可以让数据在Excel与Access之间的平滑的交互和共享。

根据我们的经验,这些解决方案会随着时间的推移,以一种非常不可预知的方式进化升迁。掌握这种混合解决方案,能让你快速灵活的响应业务变化,使你和企业有效的完成任务。

祝你好运!

access vba代码大全_Access 与 Excel 之对比 (翻译)相关推荐

  1. access vba代码大全_这本VBA经典图书终于做活动了,还是5折!

    HI~大家好.记得之前一直给大家推荐咱们EH论坛编著的VBA图书<Excel VBA经典代码应用大全>,这书出来有段时间了,但一直未见出有力的优惠活动.这次京东破天荒出了个5折,而且是没有 ...

  2. access vba代码大全_VBA 实践指南 -- VBA连接各种数据库

    ADO 简介 ADO (ActiveX Data Objects,ActiveX数据对象)是Microsoft提出的应用程序接口(API)用以实现访问关系或非关系数据库中的数据.例如,如果您希望编写应 ...

  3. access vba表字段_ACCESS VBA编程(使用技巧大全)[].doc

    ACCESS VBA编程(使用技巧大全)[].doc ACCESS VBA编程(使用技巧大全)[1] ACCESS-VBA编程 ACCESS-VBA编程. 控件: 常量控件 acBoundObject ...

  4. python打开excel执行vba代码_“Python替代Excel Vba”系列(终):vba中调用Python

    请关注本号,后续会有更多相关教程. 系列文章 学Python还不会处理Excel数据?带你用pandas玩转各种数据处理"Python替代Excel Vba"系列(二):panda ...

  5. access 处理多少数据_access和excel的区别

    Excel主要用于数据分析,门槛较低,可以很灵活地生成报表,定位于小规模数据处理.Access主要用于数据储存,门槛较高,可以搭建数据库管理系统,方便数据的快速查找和调用,定位于大规模数据处理. 两款 ...

  6. 利用VBA代码合并多个Excel表格

    步骤1:将待合并表格放入同一文件夹 步骤2:在文件件中新建一个表格 步骤3:在新表格中右击"sheet1"--"查询代码" 步骤4:输入上述代码,并运行子程序. ...

  7. access vba表字段_Access获取表字段的所有属性信息

    在Access表设计中,我们都会对每个字段做一些属性修改.比如修改文本大小节省内容,修改标题方法显示字段信息等等. 前面我们讲过< 下面的函数可以获取表字段的字段大小,格式,掩码,小数位数,标题 ...

  8. Access VBA 代码记录

    Option Compare DatabasePrivate Sub Combo4_AfterUpdate()Dim index As StringDim county As Stringindex ...

  9. access 英语什么意思_access是什么意思中文翻译

    音标:英[ˈækses]美[ˈæksɛs] n.入口,出口:接近,进入:增长:爆发 vt.接近,进入:使用,接近,获取 网络存取:接入:通路:进入 双语例句 1 . The home is situa ...

最新文章

  1. Depth by Poking:从自监督抓取学习深度估计
  2. oracle数据库硬恢复,ORACLE数据库恢复技术
  3. linux 设置gbk编码格式,设置ubuntu支持gbk编码格式和设置eclipse 编码格式
  4. C语言试题五十二之学生的记录由学号和成绩组称个,n名大学生得数据已在主函数中放入结构体数组a中,请编写函数fun,它的功能时:按分数的高低排列学生的记录,高分在前。
  5. oracle 某一字段取反
  6. java实现多线程断点续传,上传下载
  7. VirtualBox安装MACOSX 10.13虚拟机的增强功能
  8. [转] 关于闰年的判断方法
  9. linux C++ FTP客户端代码
  10. 千月影视APP前端搭建_②_创建APP应用
  11. 如何给三线表格(图片)添加标题?
  12. 微软Windows字体被诉侵权?我们来聊聊有关网站侵权被诉的那些事。
  13. Outlook显示ost has reached maximum size
  14. php 中 href,html中href什么意思
  15. 电线超负荷的危险与原因
  16. win10繁体字转简体字
  17. 书单 | 双十一薅当当羊毛4折囤书攻略
  18. 等保三级网络安全相关设备加固笔记
  19. 【Vue知识点- No4.】vue组件、组件通信、Todo案例
  20. WLGK-51单片机接口技术基础实验 ——LED闪烁灯

热门文章

  1. 非Xposed版 修改微信摇塞子
  2. 人生苦短我用python壁纸_人生苦短,我用 Python——我如何用 Python 助力工作和生活?...
  3. 2017.12.27 清华 张钹院士
  4. 95%置信区间的含义_总体均数的95%置信区间的含义是
  5. 电子刊丨云和恩墨大讲堂电子刊2019年5月刊
  6. 显卡显存测试u盘 mats_AMD YES!这次是真的YES,RX6000系列显卡发布
  7. bzoj3538[Usaco2014 Open]Dueling GPS*
  8. FCoE常见问题解答
  9. netflowv9介绍及数据包格式
  10. 对科技发展的一点认识