插入查找公式时出现错误1004

我有下面的代码查找Excel 2000中单独的工作表中出现值的date:

sSheet.Range(dateColumn & pRow) = _ "=lookup(" & valColumn & pRow & ";'" & _ iSheet.Name & "'!" & tColumn & firstRow & ":" & tColumn & lastRow & ";'" & _ iSheet.Name & "'!" & dateColumn & firstRow & ":" & dateColumn & lastRow & ")" 

这失败了,错误1004,这似乎是一个完整的通用。 真正的启发是,如果我在值的等号前插入一个刻度标记,如"'=lookup(" ,它工作正常,如果我手动删除刻度标记后,公式工作。拒绝插入?

原来问题是VBA在创build公式时并不尊重本地化设置 – 我不得不用逗号代替分号来分隔查找函数参数。

您需要将其指定为公式

 sSheet.Range(dateColumn & pRow).Formula = _ "=lookup(" & valColumn & pRow & ";'" & _ iSheet.Name & "'!" & tColumn & firstRow & ":" & tColumn & lastRow & ";'" & _ iSheet.Name & "'!" & dateColumn & firstRow & ":" & dateColumn & lastRow & ")"