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)