gpt4 book ai didi

vba - 如何使用 VBA 将公式添加到单元格

转载 作者:行者123 更新时间:2023-12-03 00:09:14 24 4
gpt4 key购买 nike

我正在尝试编写一些 VBA,它将标题文本添加到 3 个单元格,然后将公式一直填充到最后一行。我写了下面的内容,写入标题没有问题,但是当它到达我的第一个 .Formula 时它抛出一个

Application Defined or Object Defined error

需要更改哪些内容才能成功执行该宏? (这些公式是直接从单元格中的公式中提取的,所以我知道它们至少在“前端”是有效的公式)

Function Gre()
Range("E2").Select
ActiveCell.FormulaR1C1 = "Under"
Range("F2").Select
ActiveCell.FormulaR1C1 = "Over"
Range("G2").Select
ActiveCell.FormulaR1C1 = "Result"

With Range("E2:E" & Cells(Rows.Count, "C").End(xlUp).Row)
.Formula = "=IF(C2<B2,B2-C2,"")"
End With
With Range("F2:F" & Cells(Rows.Count, "C").End(xlUp).Row)
.Formula = "=IF(C2>B2,C2-B2,0)"
End With
With Range("G2:G" & Cells(Rows.Count, "C").End(xlUp).Row)
.Formula = "=IF(F2>0,'Issue',"")"
End With
End Function

最佳答案

问题可能是您使用公式转义了引号。

您需要的是:

.Formula = "=IF(C2>B2,B2-C2,"""")"
例如,

对于第一个。其他报价也需要加倍。

作为旁注,最好指定您正在处理的工作表,例如:

 Dim ws as worksheet
Set ws = Sheets("mySheet")
ws.Range("E2").FormulaR1C1 = "Under"

等等

如果不这样做,运行代码时有时会发生错误。

关于vba - 如何使用 VBA 将公式添加到单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42987975/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com