gpt4 book ai didi

vba - 使用宏记录器记录长 Excel 公式时出现问题

转载 作者:行者123 更新时间:2023-12-04 21:57:51 25 4
gpt4 key购买 nike

我正在尝试在 Excel 中记录我的公式的宏,它给了我一个语法错误。

这是公式:

=IF(AND(OR(B2="toola",B2="toola1",B2="toola2",B2="SFx200"),OR(H2="Q1",H2="Q2",H2="Q3",H2="Q4")),CONCATENATE(H2," "," ",IF(I2="p","pre","")," ","SFx","-",IF(A2="",0,A2)),IF(AND(OR(B2="toolb",B2="toolb1",B2="toolb2",B2="toolb3",B2="yoolb4",B2="toolb4",B2="toolb5",B2="toolb6",B2="toolb7",B2="toolb8",B2="toolb9",B2="toolb10",B2="toolb11",B2="toolb12"),OR(H2="Q1",H2="Q2",H2="Q3",H2="Q4")),CONCATENATE(H2," ",IF(I2="p","pre",""),"-"," ",IF(A2="",0,A2)),IF(AND(OR(B2="up",B2="up1",B2="up2",B2="up3",B2="up4",B2="up5",B2="Up6",B2="up7"),OR(H2="Q1",H2="Q2",H2="Q3",H2="Q4")),CONCATENATE(H2," ","UP","-",IF(A2="",0,A2)))))

我知道它很大,但为什么宏记录器不能正确记录它?

最佳答案

宏记录器对长公式毫无用处,因为它在为 VB 编辑器添加行继续时会覆盖一些公式字符串。您需要自己编辑代码或缩短公式 - 例如使用 OR(H2={"Q1","Q2","Q3","Q4"}) 之类的东西而不是 OR(H2="Q1",H2="Q2",H2="Q3",H2="Q4")
如果可能的话,也可以替换这样的东西:

OR(B2="toolb",B2="toolb1",B2="toolb2",B2="toolb3",B2="yoolb4",B2="toolb4",B2="toolb5",B2="toolb6",B2="toolb7",B2="toolb8",B2="toolb9",B2="toolb10",B2="toolb11",B2="toolb12")

有了这个
LEFT(B2,5)="toolb"

关于vba - 使用宏记录器记录长 Excel 公式时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40975744/

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