接着上一章用Excel实现汉字转拼音,不禁让小编想到那是否可以用Excel实现中英文翻译呢?
毕竟现在中国发展越来越快,和国际间交流越来越多,可能有些人的领导就是外国人,那这个时候拿着一堆中文的Excel报表给领导看他也看不懂。
毕竟英文能力很强的人比较少,大多数人可能还是需要借助词典,在线翻译等,这样来回折腾是很浪费实际的。
今天小编就在这里和大家分享一个公式来实现中英文翻译。
首先我们要来想想这个功能的实现思路,翻译功能Excel本身是没有这个功能的,所以我们必须借助第三方功能,比如电脑本地安装的电子词典软件,在线翻译网站。很显然不可能每个人都安装了电子词典软件,而且安装的可能也是五花八门,不好统一。因此我们可以借助在线翻译网站,只要有网络就行了。
这里小编就选择了有道在线翻译,翻译工具有了,那么要怎么调用呢?幸运的是随着Excel为了实现更多高端需求不断地升级,在2013版本开始创造性地增加了三个Web函数,这样就使得Excel拥有了调用网络的能力。
而我们今天第一个用到的函数就是WEBSERVICE函数。
WEBSERVICE函数主要作用就是通过一个网址抓取网站数据。
WEBSERVICE函数语法格式为「=WEBSERVICE(网址)」。
举个例子:任意在一个单元格里输入「=WEBSERVICE(“url?&i=你叫什么名字&doctype=json”)」,会得到如下内容:
这时我们会发现我们要翻译的内容(你叫什么名字)和结果(What’s your name)都在调用WEBSERVICE函数返回的内容里面。当然这时候再结合各种字符串截取拼接函数就可以把我们要的翻译截取出来了,但是这样会导致整个公式很长很乱,因此小编不建议这样做。
因此我们还需要另要给函数FILTERXML。
FILTERXML函数主要作用是使用指定的xpath从xml内容返回特定数据。
FILTERXML函数语法格式为「=FILTERXML (xml, xpath)」。
单从上面的解释,没有一定基础的或编程背景的人,应该很难理解是什么意思。
下面我们结合例子详细解释,首先xml是一直特定的数据格式,xpath就理解为一个名字。
首先我们用WEBSERVICE来获取一个xml格式的数据,可以帮上面的例子稍微调整一下把网址中的「doctype=json」改为「doctype=xml」,任意在一个单元格输入「= WEBSERVICE(“url?&i=你叫什么名字&doctype=xml”)」,会得到如下内容:
单元格中展示的数据就是xml格式的数据了,而”input”,”translation”都可以用xpath参数。
而我们要的翻译结果就在”translation”下面,因此我们结合WEBSERVICE函数和FILTERXML函数,写一个直接获取翻译结果的公式:
「=FILTERXML(WEBSERVICE(“url?&i=你叫什么名字&doctype=xml”),”//translation”)」。
得到结果如下:
这样基本中英文翻译基本原理实现就解决了,然后再把要翻译的内容替换成单元格的引用,这样就可以动态翻译啦。
如上图在C5单元格中输入公式:「=FILTERXML(WEBSERVICE(“url?&i=”&B5&”&doctype=xml “),”//translation”)」,并选中C5单元格,鼠标移到C5单元格右下角,当鼠标变成黑色十字,然后双击黑色十字向下快速填充B5:B10区域,到此整个操作就完成了。
具体动态演示如下:
今天的分享到这里就结束了,但是学习的道路才刚刚开始,希望我们可以在学习的道路上不断地前进,坚持不懈。
如果你有感兴趣的功能,可以告诉小编哦,小编会为你写一篇相应的文章。当然是先到先写哈,我会列一个计划表,尽量满足大家的需求,所以如果下一篇不是你要的文章,请不要着急,可能就在下下篇。记得告诉小编你想学习的功能哦。