You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VBA中调用Excel 365内置的TRANSLATE()函数?

在VBA中使用Excel 365 TRANSLATE函数的解决方法

问题原因

Excel 365的TRANSLATE()是工作表专属函数,并非VBA内置函数,直接在VBA代码或立即窗口中调用会触发“Sub or function not defined”编译错误。

可行实现方式

方法1:通过Application.WorksheetFunction调用

利用该对象直接调用工作表的TRANSLATE函数,语法示例如下:

' 模块代码中执行
Dim translatedText As String
translatedText = Application.WorksheetFunction.Translate("Guten Morgen", "de", "en")
Debug.Print translatedText ' 在立即窗口输出翻译结果

' 立即窗口直接执行语句:
? Application.WorksheetFunction.Translate("Guten Morgen", "de", "en")

方法2:使用Evaluate方法

通过解析工作表公式字符串的方式执行TRANSLATE函数,适合复杂公式场景:

' 模块代码中执行
Dim translatedText As String
translatedText = Evaluate("TRANSLATE(""Guten Morgen"", ""de"", ""en"")")
Debug.Print translatedText

' 立即窗口直接执行语句:
? Evaluate("TRANSLATE(""Guten Morgen"", ""de"", ""en"")")

关键注意事项

  • 必须使用Excel 365(月度/半年度更新频道),TRANSLATE翻译函数是较新功能,旧版本Excel不支持。
  • 调用时需保持网络连接,该函数依赖微软翻译服务才能正常运行。

内容的提问来源于stack exchange,提问作者Richard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 07:18:16