使用Excel的目的是为了处理大量的数据,而学习VBA是为了更方便的处理大量的数据,用的多了就会发现,在使用VBA处理Excel中的数据的时候,总是花很多的精力在处理那些不规则的数据上。
如果你的VBA用的不错了,总会碰上一些找你帮忙的人,他们很多时候就会丢一个表格给你,说我要怎么样怎么样。这个时候你就得去看他的Excel数据是怎么组织的,最后需要什么结果,然后才能去编写VBA处理。
如果Excel数据非常的不规范,根本找不到规则的时候,你就会告诉求助的人说实现不了,可能求助的人还会很怀疑你是不是不愿意!
所以,VBA用的多了,最后总还是会回到数据的规范上来,只有规范的数据才更方便用VBA来处理。
可是Excel的设计目的就是为了方便用户使用的,对数据完全没有什么限制,单元格中想填写什么数据都可以,还可以合并单元格等等!
而这些随意的操作让写VBA处理变的非常的困难,这个时候,自然而然会想到数据库上来,那么,什么是数据库呢?
百度:数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。
从百度上给出的定义可以看出,数据库也就是数据的集合,说到底仍然是电脑磁盘上的数据,但是它是有组织的。
这一点非常的重要,就像前面说到的,我们使用VBA处理Excel数据的时候,总是碰上很多不规则的数据。而数据库就很好的限制了这种不规则的情况发生,让存储的数据保证有规则。
那么,为什么这些数据能够做到有组织呢?
如果从来没有接触过数据库的,建议先使用Access去感受一下,如果安装office的时候没有安装这个,建议安装上去试着用用。
其实很多概念和Excel也是一样的,首先可以新建一个Access文件,这就相当于Excel的文件,打开后是空的,点击创建-表,就新建了一个叫做表的东西,这个就和Excel的Worksheet一样。
点击视图-设计视图,右边就可以添加字段,相当于Excel中Worksheet的列。从这里就可以发现,每一个字段后面都需要选择一种叫做数据类型的东西,这个就是数据库对数据输入的一种限制,也就是这一类的限制保证了数据的有组织。
这个时候如果点击保存,还会提示字段名称有重复,图中的3个字段名称都写了列1,在数据库中也是不允许的,必须保证字段名称的不重复。
点击视图-数据表视图,展现给我们的其实和Excel表格的形式是差不多的,数据的构成仍然是行 列的二维数据形式。
只是里面存在很多的限制,也就是这些限制和Excel有很大的不同。Excel用的多了,对数据有了一定的规划,应该都能够接受和理解这种限制。
那么,如何用VBA去操作数据库呢?
数据库设计了那么多的限制,数据的结构应该也非常的复杂,难道我们需要去了解清楚这些复杂的数据结构吗?
肯定是不需要的,我们只是使用数据库,只需要知道如果去调用操作数据库的程序就可以,而这些操作数据库的程序,不同的数据库都会有不同的程序。
只需要安装好对应的数据库驱动程序,在Windows上,VBA只需要使用ADO接口去操作就可以。
所以想使用VBA来操作数据库,需要学习的东西并不多,主要就是ADO和SQL语句。
而想真正用好数据库来组织管理自己的数据,更多的是需要自己去学习、理解设计数据库的知识。