一行代码实现窗口置顶_一行代码实现Microsoft.Office.EXCEL的自动翻译功能

某些时候我们需要使用翻译软件来进行翻译,比较常见的有灵格斯翻译、有道翻译、百度翻译等。可以选择在线翻译,也可以使用软件进行翻译。虽然现在都是机翻,毕竟人工翻译的价格在那,一个字就要最低0.11元(有道翻译价格)。而且平时翻译用的也不多,也只是需要知道个大概的意思就行了,所以机翻也其实有95%以上的准确率了,够用了。但如果遇到excel中存在大量需要翻译的单元格呢?不能总是一个一个复制过去,又再粘帖结果回来吧。这时候,一行简单的代码,就可以帮助我们实现相应的要求。先看一个GIF动图的演示,词语也算比较简单的:
可以看到,非常之快,极速之间则完成了相应的翻译了。支持中英互译。
这一切,都源自于单元格中的函数代码为:

9d0ea0f75ba8bdf69b529bdfc2d75346.gif
=FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&A1&"&doctype=xml&version"),"//translation")


其中调用了三个函数或者接口:一、 FILTERXML函数
FILTERXML函数为使用指定的 XPath 从 XML 内容返回特定数据。
语法:FILTERXML(xml, xpath)
FILTERXML 函数语法具有下列参数。
config.xml 必需。 有效 XML 格式的字符串。
Xpath 必需。 标准 XPath 格式中的字符串。
在我们这里使用的函数中,config.xml 就是嵌套了WEBSERVICE函数的如下字段:WEBSERVICE(“http://fanyi.youdao.com/translate?&i=”&A1&”&doctype=xml&version”)
Xpath就是//translation二、WEBSERVIC函数
WEBSERVIC函数为返回 Intranet 或 Internet 上的 Web 服务数据。大多数情况下是不安全的,会提出安全警告,所以要忽视或者容许运行。
语法:WEBSERVICE(url)
WEBSERVICE 函数语法具有下列参数。
Url 必需。 Web 服务的 URL。
备注
如果参数无法返回数据,则 WEBSERVICE 返回错误值 #VALUE!。
如果参数导致字符串无效或含有的字符超过允许的单元格限制(32767 个字符),则 WEBSERVICE 返回错误值 #VALUE!。
如果 url 字符串所含字符超过 GET 请求允许的 2048 个字符,则 WEBSERVICE 返回错误值 #VALUE!。
对于不支持的协议,例如 ftp :// 或 file://,WEBSERVICE 返回 #VALUE! 错误值。三、有道翻译在线接口:
有道翻译并没有直接提供在线的接口,这个接口应该是以前留下的,或者并网友发现的。http://fanyi.youdao.com/translate?&i=”&A1&”&doctype=xml&version
这段代码的含义是,使用有道翻译的接口,将A1单元格中的文字翻译后,并提供xml格式。正常情况下,网页上返回的结果是:

This XML file does not appear to have any style information associated with it. The document tree is shown below.<response type="EN2ZH_CN" errorCode="0" elapsedTime="1"><input><![CDATA[ administrator ]]></input><translation><![CDATA[ 管理员 ]]></translation></response>

6ea9f806a38fb4e0b065b8a2d2671832.png

那么通过Xpath //translation 的位置,可以定义到CDATA 管理员字段,则把该字段提取,返回特定值到数据到B1单元格中。
如果我们使用input来定义,那么返回的值就是输入值了。
这个函数代码的使用还有前提:

  • Excel的版本在2013以上
  • 连接了互联网
  • 有道翻译没有禁用这个接口

是不是比较实用的一个功能代码?

更多:

一行代码实现Microsoft.Office.EXCEL的自动翻译功能​www.iappi.cn
5a92c4e860a317d770fa7be542be515a.png
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值