VBA,IF和Vlookup声明

我有下面的公式,

=IF(valumeasure3!E2="Buy Notional Amount",VLOOKUP(C2,valumeasure3!C:U, COLUMNS(C:U),FALSE),0) 

试图在vba中自动化这个公式,我得到一个语法错误。 Vlookup公式工作正常,但只要我做的IF语句我得到语法错误。 我相信这是与=

 Range("R2").Select ActiveCell = "=IF(valumeasure3!E2="Buy Notional Amount",VLOOKUP(C2,valumeasure3!C:U, COLUMNS(C:U),FALSE),0)" ''buy currency amt Selection.AutoFill Destination:=Range("R2:R4182") 

在VBA中,当您使用引号时,您正在为string设置边界。 你应该使用双引号。

 Range("R2").Select ActiveCell = "=IF(valumeasure3!E2=""Buy Notional Amount"",VLOOKUP(C2,valumeasure3!C:U, COLUMNS(C:U),FALSE),0)" ''buy currency amt Selection.AutoFill Destination:=Range("R2:R4182") 

不过,一个build议是,我会build议你不要使用.SelectActiveCell只要有可能。

 Dim Rng as Range Set Rng = Range("R2") Rng.Value = ....