如果单纯的用Excel整理数据很是麻烦,一共九个班级,每个班级都要求三门课的平均成绩,费时费力。

复制Excel表格中的学生成绩数据→打开已有的Access数据库→创建表→粘贴保存

其实,在实际工作中有很多问题是可以通过Access数据库与Excel表格结合来解决的,这样很能够节省时间,虽然在Excel表格当中也提供了很多函数能够分组求得我们想要的结果,但是步骤繁琐。

能通过这种结合的方式可以很好的解决不同的难题,一个是利用了Access数据库处理数据的优势,一个是利用了Excel表格成图的优势,两个优势结合,必然事半功倍。

VB程序设计比较容易学习,一些非计算机专业的人士也能够轻松学好VB程序设计,VB程序设计来应付你日常工作中的问题,是完全可以胜任的,有一些比较复杂的数据需要进行处理运算,如果单纯的有表格或者数据库,整个操作是相当麻烦的,不仅浪费了时间,还容易出错,下面来介绍一下利用VB程序如何读取Access数据库中的数据与Excel表格中的数据。

这是一个空的程序窗口,我们还没添加任何控件和代码,我们先不细介绍VB6.0的界面,我们现在只用到它的按钮控件,就是上面圈起来的东东。它在里面叫做“commandbutton”,我们双击它,它就跳到我们的窗口界面了:

其实和Access数据库与Excel表格的VBA宏是差不多的,只不过语法上略有差别,VB6.0可以很灵活的去做一个小的软件程序,而VBA宏只能作为插件使用。

写读取Excel表格数据的程序,其实读取的代码基本是固定的,只要大家把这个固定的程序代码直接复制进去就好,根本不用自己亲自动手去敲代码的。

这几个定义都是固定的模式,我们使用VB程序对Excel表格数据进行读取时,都要对Excel进行定义,这样VB程序才能够识别出所要读取的文件。

是建立Excel文件用的,它表示建立一个Excel对象,对象建立完了之后,我们就可以打开指定的文件了,就是下面这个:

紧接着,For i = 4 To 89....Next i就是我们读取数据和处理数据的过程了,具体要根据实现什么样的功能,来编写程序。

再往下还是固定的模式,就是读取完文件内容后,要把文件关闭掉,要不它会始终占据内存的:

就是程序运行完之后会弹出小的对话框,对话框显示的文字就是“good job”,当然也可以显示“程序已经运行完毕”,比较灵活。

可以看到,这窗体上面只有一个按钮,我们要想运行我们刚刚写的代码,只需要点击上面这个按钮就可以啦,就是点击“Command1”。

下面再来看看VB如何操作Access数据库,其实VB操作Access数据库的代码理简单,看看下面这个就知道啦:

这条语句是读取路径,找到文件的位置,也是固定的模式,只要把文件名改了即可。

这条查询语句就是我们要实现的复杂操作,当然我们在程序里面可以上百条的查询语句,只要遇到同样的工作,我们可以直接运行程序即可。

这两条语句就是执行我们前面写的的查询语句啦,也是固定的,只要把查询语句的名称改了就好。

再往下就是MsgBox good job,就是和上面操作Excel表格一样,程序运行完了之后会弹出一个对话框:

其实非计算机专业的人士也能够很好的学会编程,只要掌握技巧是很容易掌握的,小编身边有不少非计算机专业的人都在学习编程,只要掌握了编程,手头的工作会变的如此轻松。

先来看一个VB程序存取Excel表格数据的例子,我们要把“sheet1”表中一班的学生语文成绩用VB程序存取到“sheet2”表里面去。

首先打开安装好的VB6.0程序,然后保存到一个指定的文件夹下面,这样我们就有了一个空的VB程序,我们双击按钮控件,按钮控件就会自动跳到窗体上面:

在进入代码窗口之前我们简单把这个控件设计成好看的样式,点击属性窗口图标,就会弹出一个属性窗口,在这个窗口下,就能对我们的按钮进行设计啦:

然后点击按钮控件,在右边的属性窗口找到“Caption”字样,它就是控件要显示的名字,我们可以任意修改,改完后的效果是这样的:

可以看到按钮变颜色,如果选上色彩后,没有变色,那一定有一个选项没选,就是下面这个要点Style选项的第二个类型,就允许我们对控件的色彩进行改变:

好了,继续双击这个设计完的按钮吧,这样就进入到编写代码的窗口了,就是下面这个样子:

先把昨天的固定代码复制过来,就是读取Excel表格数据固定引用的代码,在代码窗口的开始部分:

上面的F:\成绩表.xlsx和Sheet1是我们要读取数据的目标文件和目标表,一定要和我们的数据一致。

准备的代码都已经完工,就等着在上面中间的空白部分去实现我们要实现的工作,我们的目标是要把“sheet1”表中一班的学生语文成绩自动存取到“sheet2”表里面去。

我们已经读完数据啦,下面我们来把从“sheet1”表中读取的一班数据写到“sheet2”表中去:

这样,我们的程序就差不多啦,不过还要修改几处,就是前面要加上变量的定义,否则程序就会报错,定义加在前面即可:

直接弹出这个文件啦,程序瞬间完成了我们的工作,问是否保存呢,我们点击取消就行,文件就会打开着,之后我们再保存。

先来创建一个空的VB程序,当然也可以用昨天做好现成的,只不过我们在旁边再加一个“按钮控件”而已,我们按照昨天的设置,对今天新加的这个按钮显示的内容“Caption”改成“逆天操纵Access”,和背景色“BackColor”改成“粉色”,以及字体改成“楷体”和字体大小改成“小四”号,完成了相应的设置之后,就是下面这个样子:

可以看到,上面的代码就是我们昨天编写的存取Excel文件数据用的代码,下面这个模块是空的:

可以看到,我们刚刚编写的程序瞬间运行完成,点击确定,来看看我们的数据库里面有什么变化吧:

总分算出来了,并且还在我们的数据库里面增加了一个字段,就是我们在程序里面已经添加的。其实,这是最简单的,只有更复杂的工作才会动用我们去编程序,所以先把简单的学会,复杂的自然而然慢慢就学会。

有时,我们想要对数据库中的某类数据进行分类整理,使得结果一目了然,下面这个学生成绩表的总分,我们已经算出来了,我们想要很直观的表达哪个学生三门的平均成绩及格啦,哪些没有及格:

第一种方法以前接触过,就是对已有的学生成绩表进行更新查询,也就是对原表进行了增加字段的改动,这里面我们使用的是update语句,这个语句有固定的语法格式:

第二种方法中的iif函数,我们并不经常接触到,但是这个函数对我们平常是非常有用的,它能够在不修改表的情况下,查询出我们想要的结果,它实际并没有对原来存在的学生成绩表进行改动。

所以,两种方法,当需要改动时,我们用第一种方法,当不需要对原表进行改动时,我们选择第二种方法,你记住这个iff函数的语法格式:

【iif(条件,结果1,结果2)】,当条件满足时,即为线,上面的查询表示当总分数满足小于180分的时候,我们就返回“不及格”的结果,否则返回“及格”的结果。

发表回复

您的电子邮箱地址不会被公开。