作者:乔山办公网日期:
返回目录:excel表格制作
1、按ALT+F11调出EXCEL中VBA界面。知
2、右键插入一个模块。
3、首先新建一个子程序,如图,填写道公式进去。
4、for 是可以从任意数字开始和结束的,如图,我们从第2行到第10行。点击运行后,依次计算并填写完成版。
5、接下来,用同样方法写完求平均数公式。
6、同样,运行后,可以看到,不均数也填写完成了。
7、这样填写的权是公式,仔细观察,会发现相当于我们自动输入了公式,而不是计算后的值。
你用function的话,这个是e799bee5baa6e997aee7ad94e59b9ee7ad94337个函数,是个值,当然不能在那儿孤零零的使用。
要这样用,a=char_a("[n]",3),要赋予某个变量。
而sub就不一样了,本身只是个子程序,调用即可。
call sub(a,b)或者sub a,b
修改后的结果,楼主查收:
Sub char_a(q As String, w As Single)
If Len(q) < 0 Or w <= 0 Then
MsgBox "函数参数错误"
Exit Sub
Else
With UserForm1 '估计楼主是在某个窗体中使用的,姑且定为userform1
i = .TextBox1.SelStart
n = Left(.TextBox1.Value, .TextBox1.SelStart)
m = Right(.TextBox1.Value, Len(.TextBox1.Value) - .TextBox1.SelStart)
.TextBox1.Value = n & q & m
.TextBox1.SelStart = i + w
End With
End If
End Sub
各个模块使用如下:
Private Sub Label1_Click()
Call char_a("[n]", 3)
End Sub
Private Sub Label2_Click()
Call char_a("[p##]", 4)
End Sub
Private Sub Label3_Click()
Call char_a("[mp##]", 5)
End Sub
运行成功!
什么叫做vba自定义的函数公式?
你是想说:如何进入vba代码编辑窗口吗?
不要把代码放在表格的代码里,插入一个新模块,代码放在模块里
在模块里定义:
function aa(a)
aa=a
end function
窗体里调用:
x=aa(1)
msgbox x