Excel 2016(Win10环境)VBA代码中C[-16]:C[-17]的含义是什么?
关于VBA代码中
C[-16]:C[-17]的含义解释 嘿,这个问题抓得很准!咱们一步步拆解这段Excel VBA代码里的C[-16]:C[-17]:
首先得明确,这里用的是Excel的R1C1引用样式(和咱们平时默认的A1样式不一样),FormulaR1C1属性专门用这种引用格式来写公式。在R1C1规则里:
R代表行,C代表列;- 方括号里的数字是相对偏移量:正数表示向右/向下偏移,负数表示向左/向上偏移;如果不带括号直接写
R或C,指的是当前单元格所在的行/列。
那具体到C[-16]:C[-17]:
C[-17]:指的是当前单元格所在列向左偏移17列的那个整列;C[-16]:指的是当前单元格所在列向左偏移16列的那个整列;- 两者组合的
C[-16]:C[-17],就是这两个相邻列组成的连续数据区域(顺序不影响,本质是偏移16和17列的两列范围)。
结合你这段代码里的VLOOKUP公式来看:
这个区域是在名为temp的工作表里('temp'!指定了工作表),作为VLOOKUP的查找范围——VLOOKUP的第三参数是2,意味着会返回这个两列区域里第二列的匹配值。
举个实际例子:如果当前单元格在第20列(T列),那C[-17]就是20-17=3列(C列),C[-16]是20-16=4列(D列),那'temp'!C[-16]:C[-17]就等价于A1样式里的temp!C:D。
内容的提问来源于stack exchange,提问作者rivaq45
相关产品推荐
相关产品推荐

