Excel 求教一下关于VBA function的用法

如题所述

下面是我复制别人区分SUB和function的。这个我觉得挺重要的。

1.function可以返回值,sub则不可以返回值
2.sub可以直接执行,但function需要调用才可以执行
明白了这两点也就可以解决上面提到的矛盾了
1.如果需要过程名(function或sub的名字)能返回值,则必用function
2.如果需要直接执行(F5或链接到按钮控件),那么就要用sub了
3.其他情况可以根据个人爱好解决了

然后给你举个例子。比如说我们要把a,b,c直接变成1,2,3这样的数字。

我们可以用code函数

你也可以自己编写一个直接让a变1的。

插入模块,然后输入以下程序

Function 数值转换(temp As String)

数值转换 = Asc(temp) - 96

End Function

这样就直接得到1了。

你可以看附件。

其他的话,根据程序的需要,你要合理选择sub和Function。

比如一个一个Y=3X,我们先知道了X要知道Y,可以用一个子函数,返回Y的值。这样的话如果这个过程复杂,就可以省去很多重复的程序。要用SUB虽然也可以,但是你就得定义一个全局变量了,这样对程序是不利的,变量多了容易出错。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-08-24
是指function过程吗,function过程其实和sub过程差不多,区别在于funtion过程有返回值,可以直接在工作表中调用,就像使用excel内置的函数一样。
第2个回答  2015-08-24
vba实例提供或者讲解