1 sub和function的区别
sub 是宏函数,做一个button指定到sub函数上,可以执行一些操作,不能返回值
function 是普通函数,像excel自带函数一样,可以有参数,可以返回值,例如sum函数,如下:可以实现同样的sum函数功能(只能选择相邻的块):
Function sum_2(AA As Variant) Dim total, n,m, i, j, A As Variant A = AA total = 0 n = UBound(A, 1) m = UBound(A, 2) For i = 1 To n For j = 1 To m total = total + A(i, j) Next j Next i sums = total End Function
2 UBound
a Ubound(A) 对于一维数组返回数组A元素个数
b Ubound(A,1) 对于二维数组返回数组A行数
c Ubound(A,2) 对于二维数组返回数组A列数
3 Dim ReDim
Dim A as string,B as interger,C(),D(,)
ReDim C(5),D(4,4) 默认下标 1 to 5
ReDim C(0 to 4),D(0 to 4, 0 to 4) 下标为0 ~4
4 选取表格方法
a Sheets(“sheet1”).Range(“a1”)
b Sheet3.Cells(1, 1) //Sheet3 在vba中查看
Sub test() Dim temp1, temp2 temp1 = Sheets("b").Range("a1") temp2 = Sheet1.Cells(1, 1).Value MsgBox temp1 + " " + temp2 End Sub
5 CONCATENATE() 连接字符串 indirect() 引用
CONCATENATE() 相当于 & 连接字符
indirect() 返回字符串指定的引用,例:C1=10 , =indirect(“A”&C1) 返回A10单元格的值
6 right ,left ,mid, len, lenb, offset column,rows,find,offset 等 函数用法
例 :left(A1,x) 从A1左边x开始截取,到最后,right 同理,mid(A1,x1,x2) 从中间截取,x1开始,x2结束
column() 返回当前单元格的列数 columns() 返回所选单元格的列数,row和rows同理
find/findb 返回一个字符/串在里一个字符串里出现的位置。
offset 返回相对一个参考位置偏置后的单元格的内容
cell(“filename” 返回当前文件路径+文件名+sheet名,然后利用字符串处理方法获得当前sheet名
Recent Comments