引用新插入的列Excel VBA
我想在下面的公式中引用一个单元格。 “AUA总结”!$ D $ 9 。 每次macros运行一个新的列D被插入。
问题:列插入时,我的参考移动到** 'AUA Summary'!$E$9.
即使使用VBA插入新单元格,如何引用'AUA Summary'!$D$9
。 我的formuleas在下面。
=IF(ROUND((SUM('BLL UTADS'!$D:$D)-'AUA Summary'!$D$9)+ (SUM('BLL UTADS'!$E:$E)-'AUA Summary'!$D$15),2)=0,"OK", "Balances don't tie on BLL UTADS to AUA Summary Sheet") =IF((SUM('BLL Prestige'!$D:$D)-'AUA Summary'!$D$10)+ (SUM('BLL Prestige'!$E:$E)-'AUA Summary'!$D$16)=0,"OK", "Balances don't tie on BLL Prestige to AUA Summary Sheet") =IF((ROUND('AUA Detail'!$D$9+'AUA Detail'!$D$23-'AUA Summary'!$D$11,1)+ROUND('AUA Detail'!$D$15+'AUA Detail'!$D$29-'AUA Summary'!$D$17,1))=0,"OK","Check the Totals tie")
问题在于'AUA Summary'
标签上的引用不断变化。 我曾尝试过VBA录音机,但是我一直在听同样的问题。
每个formuleas将在一个单元格中。
你可以使用Indirect()
例如
'AUA Summary'!$D$9
可以写成
INDIRECT("'AUA Summary'!$D$9")
这样即使列移动,它也会引用同一个单元格。
另一种方法是使用Index
例如Excel 2007+中的D9
可以写成INDEX(1:1048576,9,4)
或INDEX(INDIRECT("1:" & ROWS(A:A)),9,4)
适用于任何版本的Excel