vb是什么意思(用VBA可以做什么,VBA面向哪些人群)

一直以来总是讲函数,我也曾经说过,讲函数也是在讲VBA的编程思路,相信很多的朋友通过函数的学习收获很多,可以解决工作中的很多问题了 。今天带大家详细地理解一下VBA,总在提VBA,那么VBA到底是什么呢?可以解决什么问题呢?都面向哪些人群呢?下面就讲这些问题 。
一 VBA是什么
VBA是Visual Basic for Application的缩写,通俗说就是用VB对程序进行控制,使用户可以自行去定义属于自己需求的软件成为可能性 。它主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件 。也可说是一种应用程序视觉化的Basic 脚本 。该语言于1993年由微软公司开发,实际上VBA是寄生于VB应用程序的版本 。微软在1994年发行的Excel5.0版本中,即具备了VBA的功能 。
上面谈到VBA是寄生于VB的 。那么两者有什么区别呢?
1 VB设计用于创建标准的应用程序,而VBA是使已用的应用程序如EXCEL自动化 。
2 VB具有自己的开发环境,而VBA必须寄生于已用的应用程序上 。
3 要运行VBA开发的应用程序,必须依赖它的父应用程序 。
尽管存在这些不同,VB和VBA在结构上仍然十分相似,事实上,如果你已经了解了VB,会发现学习VBA非常快,相应的,学完VBA会给学习VB打下坚实的基础 。
综上,VBA就是可以使现有的应用程序实现自动化的手段,并可以通过自定义的方法创建你需要的问题解决方案 。
第二 VBA都可以用来做什么呢?
也不用再讲更多的高大上的条条框框,对于职场中的你我,主要可以实现如下的作用:
1 自动化实现复杂的数据处理,我把这个阶段作为VBA的初级阶段 。下面还是以一个批量查找的程序为例:下面的程序实现了批量的不同工作表的查找 。
Sub KK()
Sheets("SHEET1").Select
i = 2
Do While Cells(i, 1) <> ""
Cells(i, 1).Select
TT = Cells(i, 1)
Cells(i, 2) = ""
Set FJX = Sheets("A").Range("A1:A" & Sheets("A").Range("A1").End(xlDown).Row).Find(TT, AFTER:=[A1], LOOKAT:=xlWhole)
If Not FJX Is Nothing Then Cells(i, 2) = Sheets("A").Cells(FJX.Row, 2)
Set FJX = Sheets("B").Range("A1:A" & Sheets("B").Range("A1").End(xlDown).Row).Find(TT, AFTER:=[A1], LOOKAT:=xlWhole)
If Not FJX Is Nothing Then Cells(i, 2) = Sheets("B").Cells(FJX.Row, 2)
Set FJX = Sheets("C").Range("A1:A" & Sheets("C").Range("A1").End(xlDown).Row).Find(TT, AFTER:=[A1], LOOKAT:=xlWhole)
If Not FJX Is Nothing Then Cells(i, 2) = Sheets("C").Cells(FJX.Row, 2)
Set FJX = Sheets("D").Range("A1:A" & Sheets("D").Range("A1").End(xlDown).Row).Find(TT, AFTER:=[A1], LOOKAT:=xlWhole)
If Not FJX Is Nothing Then Cells(i, 2) = Sheets("D").Cells(FJX.Row, 2)
i = i + 1
Set FJX = Nothing
Loop
End Sub
vb是什么意思(用VBA可以做什么,VBA面向哪些人群)
文章图片


2 与数据库建立连接实现查、删、改、增等基础sql操作,以及事件调用、数据表创建等复杂操作 。这是VBA的中级阶段 。
关于数据库相连接的问题,我在之前的文章中已经讲过,不再多说了,那个代码可以作为是通用代码的 。
3制作窗体实现交互,人机的对话 。这个才是VBA的高级阶段 。
这个阶段是建立在1,2基础上的,其实,VBA的窗体设计不是很完美,不如VB,我建议大家可以把EXCEL作为一个开发的平台来对应,这种思路更能体现VBA的价值,在EXCEL中有大量的表格可以利用的 。
第三哪些人群需要VBA呢?
这也就是我要讲VBA面向的对象,你不必是专业的程序员,其实专业的程序员不一定能写出与实际工作结合完美的程序 。只要你多来我的这个平台,每天学点,每天学点,日积月累肯定会有回报,放正心态,宿值得本,收获也会多多 。