楼主 xmyjk |
一直以为,中括号([])在VBA里面的作用,就是RANGE("XX")或cells(a,b)的简写 查了下VBA2007参考大全,[名称]可以用来引用工作表的自定义名称,将自定义名称的单元格进行引用。 昨天在网上翻资料,发现还可以,数组的简单运算:
以及像EVALUATE一样引用工作表函数(Evaluate("Sum(A1:A3)")),
举个例子, 如,工作表1的第一行是动态的,其列是不固定的,如果我们要将其赋值给数组arr(),怎么做呢 函数的做法可以自定义名称ABC(公式为OFFSET(Sheet1!$A$1,0,0,,COUNTA(Sheet1!$1:$1))+0),然后VBA里面,
顺便分享我查到的资料,[]或EVALUATE用法: 1、引用常量数组 例:arr = [{0,"1%";10001,"2%";25001,"4%";50001,"5%";80001,"6.50%";100000,"7%"}] 2、引用单元格区域 例:[A1]、[A1:C3] 3、作为like函数里的字符串模板序列 例:if string like "[a-Z]" then 4、数组的简单运算 例:arr=[A1:B3+100] 5、引用工作表函数 例:[B1] = [sum(A1:A3)] |
2楼 zm0115 |
arr() = [OFFSET(Sheet1!$A$1,0,0,,COUNTA(Sheet1!$1:$1))+0] arr = [{0,"1%";10001,"2%";25001,"4%";50001,"5%";80001,"6.50%";100000,"7%"}] 第一次知道可以这么写。又让兄弟我学到了新东西,:)谢谢 |
3楼 liuguansky |
[]就相当于EVALUATE,不过弱一点。 |
4楼 0Mouse |
抄一遍,呵呵! 1:
2:
3:
1、2等价,返回值;3返回结果相同,但是在A4内输入了公式。 附件: 中括号引用公式.rar |
5楼 CheryBTL |
[]和EVALUATE一起学习了! |
6楼 bluexuemei |
学习,谢谢分享! |
7楼 越甲三千188 |
学习 |
8楼 笑眼晴天 |
今天刚好学这个,不是很明白。学习一下。 |
9楼 mmice |
不是很明白 |
10楼 水星钓鱼 |
[]的表达方式不利于调试就是了。 |
11楼 lrlxxqxa |