关于excel vba基础入门中vba的SET什么意思啊?谢谢

查看: 4436|回复: 5
excel中:=和=有什么区别
如题,vba中两者有那种区别。。。为什么不能直接用=
A: 两者都是赋值符,但赋值的对象不同而已。
1. :=&&是“方法”的内部子参数赋值时使用的。
比如说Find(查找)方法,其语法如下:
1.expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)
当我们想在Sheet1中查找“工时”两个字时,可以这样写:
1.Sheet1.Find(What:=&工时&, LookIn:=xlValues, LookAt:=xlWhole)
这里,Find就是“方法”,相当于主要过程,而括号内的What、After、LookIn、LookAt、MatchCase之类的,就是这个方法的子(内部)参数,当给这些内部参数赋值时,就要用到:=。
当然,上面的语句,如果你按参数的顺序写,然后不赋值的参数用逗号预留占位的话,这些子参数的名称也是可以省略的,也就可以省略:=这个赋值符。
2. =是给变量、对象赋值时使用的。
& & 如 i = 55、Range(&A1&).Value=&Good Morning&、Set Rng = Range(&A1&)、Set dic = CreateObject(&Scripting.Dictionary&) 等等。
A: 两者都是赋值符,但赋值的对象不同而已。
1. :=&&是“方法”的内部子参数赋值时使用的。
比如说Find(查找)方法,其语法如下:
1.expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)
当我们想在Sheet1中查找“工时”两个字时,可以这样写:
1.Sheet1.Find(What:=&工时&, LookIn:=xlValues, LookAt:=xlWhole)
这里,Find就是“方法”,相当于主要过程,而括号内的What、After、LookIn、LookAt、MatchCase之类的,就是这个方法的子(内部)参数,当给这些内部参数赋值时,就要用到:=。
当然,上面的语句,如果你按参数的顺序写,然后不赋值的参数用逗号预留占位的话,这些子参数的名称也是可以省略的,也就可以省略:=这个赋值符。
2. =是给变量、对象赋值时使用的。
& & 如 i = 55、Range(&A1&).Value=&Good Morning&、Set Rng = Range(&A1&)、Set dic = CreateObject(&Scripting.Dictionary&) 等等。
A: 两者都是赋值符,但赋值的对象不同而已。
1. :=&&是“方法”的内部子参数赋值时使用的。
比如说Find(查找)方法,其语法如下:
1.expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)
当我们想在Sheet1中查找“工时”两个字时,可以这样写:
1.Sheet1.Find(What:=&工时&, LookIn:=xlValues, LookAt:=xlWhole)
这里,Find就是“方法”,相当于主要过程,而括号内的What、After、LookIn、LookAt、MatchCase之类的,就是这个方法的子(内部)参数,当给这些内部参数赋值时,就要用到:=。
当然,上面的语句,如果你按参数的顺序写,然后不赋值的参数用逗号预留占位的话,这些子参数的名称也是可以省略的,也就可以省略:=这个赋值符。
2. =是给变量、对象赋值时使用的。
& & 如 i = 55、Range(&A1&).Value=&Good Morning&、Set Rng = Range(&A1&)、Set dic = CreateObject(&Scripting.Dictionary&) 等等。
哦。。这样子啊。。
那请问Sheet1.Find(What:=&工时&, LookIn:=xlValues, LookAt:=xlWhole)
里面的括号应该可以省略的吧。
学习下答案知识
新手,努力成为大师中,,,,
|||Excel精英培训
Powered by查看: 3175|回复: 6
求助_代码中VBTAB(0)是什么意思
阅读权限20
在线时间 小时
Dim dic, i&, j&, m&, arr, arr1
& & Set dic = CreateObject(&scripting.dictionary&)
& & For i = 3 To Cells(Rows.Count, 1).End(3).Row
& && &If dic.Exists(Cells(i, 1).Value) Then
& && && & dic(Cells(i, 1).Value) = Split(dic(Cells(i, 1).Value), vbTab)(0) + Cells(i, 2).Value & vbTab & Split(dic(Cells(i, 1).Value), vbTab)(1) + 1
& && &&&Else: dic(Cells(i, 1).Value) = Cells(i, 2).Value & vbTab & 1
& && &End If
& & Next i
& & Rem ITEM构造
& && &'在之前基础上,多统计个数,此时构造ITEM时,可以把两个需统计记录用分隔符隔开,EXISTS累加的时,先用SPLIT取两段再累加。
& & arr = dic.keys
请各位老师指导,谢谢
阅读权限95
在线时间 小时
相当于按键盘tab键,就是在连接字符串是加入指定长度的空白,
立即窗口运行msgbox &a& & vbtab & &b&,就明白了
阅读权限20
在线时间 小时
Temp=Split(dic(Cells(i, 1).Value), vbTab),
dic(Cells(i, 1).Value) =Temp(0)
这样你就懂了吧
阅读权限50
在线时间 小时
换行的符号!!1
阅读权限20
在线时间 小时
Sub test5() '编号大于30小于70且数量大于15000,小于45000的记录
Dim dic, i&, j&, m&, arr, arr1
& & Set dic = CreateObject(&scripting.dictionary&)
& & For i = 3 To Cells(Rows.Count, 1).End(3).Row
& && &If dic.Exists(Cells(i, 1).Value) Then
& && && & dic(Cells(i, 1).Value) = Split(dic(Cells(i, 1).Value), vbTab)(0) + Cells(i, 2).Value & vbTab & Split(dic(Cells(i, 1).Value), vbTab)(1) + 1
& && &&&Else: dic(Cells(i, 1).Value) = Cells(i, 2).Value & vbTab & 1
& && &End If
& & Next i
& & Rem ITEM构造
& && &'在之前基础上,多统计个数,此时构造ITEM时,可以把两个需统计记录用分隔符隔开,EXISTS累加的时,先用SPLIT取两段再累加。
& & arr = dic.keys
& & For j = 0 To dic.Count - 1
& && &If Not (arr(j) & 30 And arr(j) & 70 And Split(dic(arr(j)), vbTab)(0) & 45000 And Split(dic(arr(j)), vbTab)(0) & 15000) Then dic.Remove arr(j)
& & Next j
& & '再进行条件判断,把不符记录REMOVE,剩余即为所求记录
& & Range(&O:R&).Clear
& & arr1 = dic.items
& & Cells(2, 14).Resize(1, 3) = Array(&编号&, &数量&, &个数&)
& & If dic.Count & 0 Then
& & '防止未有符合条件记录,返回错误。
& & Cells(3, 14).Resize(dic.Count, 1) = Application.Transpose(dic.keys)
& & For m = 0 To dic.Count - 1
& && &Cells(3 + m, 15).Resize(1, 2) = Application.Transpose(Application.Transpose((Split(arr1(m), vbTab))))
& & Next m
& & '转置两次,返回数值结果。
& & End If
& & Set dic = Nothing
谢谢大家的帮助,我在看兰老师的VBA数组写字典知识,本例中,凡是有VBTAB的地方,我都不懂
阅读权限20
在线时间 小时
[img][/img]
阅读权限20
在线时间 小时
学习了!!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师Excel VBA 使用set赋值和不使用set赋值的区别_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Excel VBA 使用set赋值和不使用set赋值的区别
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 excel vba基础入门 的文章

 

随机推荐