gpt4 book ai didi

vba - Excel 宏,在运行时插入国际有效的公式

转载 作者:行者123 更新时间:2023-12-01 17:22:00 25 4
gpt4 key购买 nike

我有一个带有宏的 Excel 电子表格,可以插入条件格式,如下所示:

Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=UND($A3=""" & lastName & """; $B3=""" & firstName & """)"

如您所见,我使用了德语公式“AND”(即“UND”),显然,当我在法语或英语版本的 Excel 上使用此代码时,它就不起作用。通常公式会自动本地化,但如何在运行时插入适用于所有版本的公式?

最佳答案

好的,谢谢你帮我解决这个问题,你帮我解决了这个问题。

光用英文确实不行。在操作公式时可以使用英语,例如。通过设置编码 Range("A1").formula="AND(TRUE)",但这不适用于 FormatConditions

我的解决方案是一个函数,它将公式临时写入单元格,通过 FormulaLocal 属性读取它,并返回本地化的公式,如下所示:

Function GetLocalizedFormula(formula As String)
' returns the English formula from the parameter in the local format
Dim temporary As String
temporary = Range("A1").formula
Range("A1").formula = formula
Dim result As String
result = Range("A1").FormulaLocal
Range("A1").formula = temporary
GetLocalizedFormula = result
End Function

返回的公式可用于 FormatConditions,当文档稍后在不同语言版本的 Excel 上打开时,该公式将被重新本地化或取消本地化。

关于vba - Excel 宏,在运行时插入国际有效的公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13247771/

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