Range.Address属性无法正常工作
我有一个R1C1公式,它由IF和VLOOKUP函数和几个variables组成:
Sub example() Set vlpRange = wsRef.Range("B:E") '[some code...] newColumn.FormulaR1C1 = "=IF(MID(RC[-17],14,3)=""LCO""," _ & """LCO"",VLOOKUP(RC[-10],'[" & wbRef.Name & "]" & _ wsRef.Name & "'!" & vlpRange.Address(0, 0) & "," & vlpColIndex & ",0))" '[some code...] End Sub
我在每个单元格中得到以下结果:
=IF(MID(F2,14,3)="LCO","LCO",VLOOKUP(M2,'[SPS Product groups.xlsx]Sheet1'!B:(E),4,0))
问题出在vlpRange.Address(0, 0)
,它被转换成B:(E)
,而不是B:E
。
为什么会发生这种情况,我该如何解决?
尝试交换
vlpRange.Address(0, 0)
对于
vlpRange.Address(ReferenceStyle:=xlR1C1)