当我们没有用过某个工具的时候,我们无法知道是否需要它,VBA就是这样的工具。
在我学习TOC的旅途中,我知道了聚焦对工作的重要性,那我们怎样才能聚焦了?我们怎样可以做到聚焦呢?
比如一个生产性的企业,有成千上万种产品型号,而工厂的生产线产能有限,市场的需求多样化,竞争急烈,在这种情况下我们怎样聚焦呢?
凭直觉,我们要对数据进行管理,很快进入我们眼帘的是大数据,智能制造,这些离我们远吗?感觉很近,但是我却摸不着。
数据对一个企业的重要性,比如说库存管理,战略产品的确定,这一切背后必须有数据做支撑,否则只能是猜,赌,毫无胜算可言。
谈到数据想起我从业20年来我对数据是怎样操作的,如下图
一直处于较低水平的使用数据,在2017年以前做一个装箱单都要花半天的时间,而且头昏眼花
在这样的水平之下谈何智能化管理,聚焦,曾经工作过的一家企业,当年赚了钱还是亏了钱都不知道,什么产品能给公司带来高额利润也不知道,全凭感觉。
今天的主题是为什么要学VBA?
关于VBA在数据处理中的作用,我的理解是用机器来帮助我们处理重复的工作,它比人脑运算得快,而且少出错。
为了说明这一点,举一个工作表合并的例子,如图
附所编的程:
Sub test3()
Dim ws As Worksheet, rngs As Range, hb As Range
Columns("a:c").ClearContents
[a1] = "员工ID": [b1] = "姓名": [c1] = "部门"
For Each ws In Worksheets
If ws.Name <> Sheet1.Name And ws.Name <> Sheet7.Name Then
Set rngs = ws.Range("a2", ws.[b2].End(xlDown))
Set hb = Cells(Rows.Count, 1).End(xlUp)(2, 1)
rngs.Copy hb
hb(1, 3).Resize(rngs.Rows.Count, 1) = ws.Name
End If
Next
End Sub
如果用手工做的话,选择、复制、粘贴,再选择再复制,一件看似简单的事,如果要合并的表有10个或20个,就成了体力活。
但是如果用EXCEL中的编程,在第一次编好程之后,就是一键的事。
从这件事中可以得知,如果一直处于第三层或第三层以下,对数据处理的能力是非常低下,在大量的数据面前,要聚焦又是多么的困难。
还有一件事就是以英语为母语的国家,像欧美,编程语言以英语为主体,他们具有多么大的先天优势,而我们唯有加倍努力才能赶上。