excel - 在 Excel 中使用 vba 插入公式时出现“@”

标签 excel vba

我正在尝试使用 vba 将公式插入到单元格中。
这段代码工作得很好:Range("C6").FormulaLocal = "=SI(AI6<>"""";""Dictaminado"";SI(O(AB6<>"""";AC6<>"""");""En Dictamen"";SI(AA6<>"""";""Recibido"";""Pend. Pack"")))"问题出在其他代码上:Range("D6").FormulaLocal = "=SI(O(E6:I6="""";K6="""";N6:O6="""";Q6:S6="""";Y6="""";AA6:AC6="""";AE6:AF6="""";AH6:AK6="""");""Miss. Info"";""Complete"")"在 Excel 中,“@”出现在公式中每个范围的前面,如下所示:

=SI(O(E6="";K6="";@N6:O6="";@Q6:S6="";Y6="";@AA6:AC6="";@AE6:AF6="";@AH6:AK6="");"Miss. Info";"Complete")
它会引发 #VALUE 错误。有人可以解释为什么会发生这种情况以及如何避免它吗?

最佳答案

谢谢 @JvdV为您的评论!

Appears to be an array formula. So FormulaArray? But don't forget that wont take local written formats...


我这样做解决了它:
Range("D6").FormulaLocal = [here goes the formula]
Range("D6").FormulaArray = Range("D6").Formula

关于excel - 在 Excel 中使用 vba 插入公式时出现“@”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61269296/

相关文章:

python - Pandas:如何读取定义多列为多索引的Excel文件?

VBA 运行时错误 91。设置对象变量时出现问题

excel vba自动过滤范围并删除D列中带有0的所有行

excel - 复制粘贴宏后删除表中的旧数据

Excel开发: How to detect that a Range overlaps another Range?

excel - VBA:可以在运行时配置一组 "constants"吗?

sql - 在VBA过程中使用ADODB查询Excel文件时,多个JOIN不可用吗?

excel - 确定 Excel 切片器指向的字段

vba - 单步执行 Google Apps 脚本中的代码(相当于 VBA-GAS)

ms-access - 从 Excel 调用 Access Sub