Excel技巧—一个公式实现中英文翻译

Stella981
• 阅读 830

点赞再看,养成习惯;金玉其外,败絮其中。
微信搜索【亦心Excel】关注这个不一样的自媒体人。
本文GitHub https://github.com/hugogoos/Excel 已收录,包含Excel系统学习指南系列文章,以及各种Excel资料。

接着上一章用Excel实现汉字转拼音,不禁让小编想到那是否可以用Excel实现中英文翻译呢?

毕竟现在中国发展越来越快,和国际间交流越来越多,可能有些人的领导就是外国人,那这个时候拿着一堆中文的Excel报表给领导看他也看不懂。

毕竟英文能力很强的人比较少,大多数人可能还是需要借助词典,在线翻译等,这样来回折腾是很浪费实际的。

今天小编就在这里和大家分享一个公式来实现中英文翻译。

Excel技巧—一个公式实现中英文翻译

首先我们要来想想这个功能的实现思路,翻译功能Excel本身是没有这个功能的,所以我们必须借助第三方功能,比如电脑本地安装的电子词典软件,在线翻译网站。很显然不可能每个人都安装了电子词典软件,而且安装的可能也是五花八门,不好统一。因此我们可以借助在线翻译网站,只要有网络就行了。

这里小编就选择了有道在线翻译,翻译工具有了,那么要怎么调用呢?幸运的是随着Excel为了实现更多高端需求不断地升级,在2013版本开始创造性地增加了三个Web函数,这样就使得Excel拥有了调用网络的能力。

Excel技巧—一个公式实现中英文翻译

而我们今天第一个用到的函数就是WEBSERVICE函数。

WEBSERVICE函数主要作用就是通过一个网址抓取网站数据。

WEBSERVICE函数语法格式为「=WEBSERVICE(网址)」。

举个例子:任意在一个单元格里输入「=WEBSERVICE("http://fanyi.youdao.com/translate?&i=你叫什么名字&doctype=json")」,会得到如下内容:

Excel技巧—一个公式实现中英文翻译

这时我们会发现我们要翻译的内容(你叫什么名字)和结果(What's your name)都在调用WEBSERVICE函数返回的内容里面。当然这时候再结合各种字符串截取拼接函数就可以把我们要的翻译截取出来了,但是这样会导致整个公式很长很乱,因此小编不建议这样做。

因此我们还需要另要给函数FILTERXML。

FILTERXML函数主要作用是使用指定的xpath从xml内容返回特定数据。

FILTERXML函数语法格式为「=FILTERXML (xml, xpath)」。

单从上面的解释,没有一定基础的或编程背景的人,应该很难理解是什么意思。

下面我们结合例子详细解释,首先xml是一直特定的数据格式,xpath就理解为一个名字。

首先我们用WEBSERVICE来获取一个xml格式的数据,可以帮上面的例子稍微调整一下把网址中的「doctype=json」改为「doctype=xml」,任意在一个单元格输入「= WEBSERVICE("http://fanyi.youdao.com/translate?&i=你叫什么名字&doctype=xml")」,会得到如下内容:

Excel技巧—一个公式实现中英文翻译

单元格中展示的数据就是xml格式的数据了,而“input”,“translation”都可以用xpath参数。

而我们要的翻译结果就在“translation”下面,因此我们结合WEBSERVICE函数和FILTERXML函数,写一个直接获取翻译结果的公式:

「=FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i=你叫什么名字&doctype=xml"),"//translation")」。

得到结果如下:

Excel技巧—一个公式实现中英文翻译

这样基本中英文翻译基本原理实现就解决了,然后再把要翻译的内容替换成单元格的引用,这样就可以动态翻译啦。

Excel技巧—一个公式实现中英文翻译

如上图在C5单元格给中输入公式:「=FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&B5&"&doctype=xml "),"//translation")」,并选中C5单元格,鼠标移到C5单元格右下角,当鼠标变成黑色十字,然后双击黑色十字向下快速填充B5:B10区域,到此整个操作就完成了。

具体动态演示如下:

Excel技巧—一个公式实现中英文翻译

今天的分享到这里就结束了,但是学习的道路才刚刚开始,希望我们可以在学习的道路上不断地前进,坚持不懈。

如果你有感兴趣的功能,可以告诉小编哦,小编会为你写一篇相应的文章。当然是先到先写哈,我会列一个计划表,尽量满足大家的需求,所以如果下一篇不是你要的文章,请不要着急,可能就在下下篇。记得告诉小编你想学习的功能哦。

文章持续更新,可以微信搜索「 亦心Excel 」第一时间阅读,本文 GitHub https://github.com/hugogoos/Excel 已经收录,包含Excel系统学习指南系列文章,欢迎Star。

Excel技巧—一个公式实现中英文翻译

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Stella981 Stella981
3年前
Excel技巧—名称框的妙用
点赞再看,养成习惯;敏而好学,不耻下问。微信搜索【亦心Excel】关注这个不一样的自媒体人。本文GitHubhttps://github.com/hugogoos/Excel(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithu
Wesley13 Wesley13
3年前
5个Excel常用小技巧,分分钟提升工作效率
点赞再看,养成习惯;十年之计,莫如树木。微信搜索【亦心Excel】关注这个不一样的自媒体人。本文GitHubhttps://github.com/hugogoos/Excel(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.co
Stella981 Stella981
3年前
Excel基础—Office2019安装
锲而不舍,金石可镂;点赞再看,养成习惯。微信搜索【亦心Excel】关注这个不一样的自媒体人。本文GitHubhttps://github.com/hugogoos/Excel(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%
Stella981 Stella981
3年前
Excel中关于日期时间的小知识小技巧,你还记得多少?
点赞再看,养成习惯;星星之火,可以燎原。微信搜索【亦心Excel】关注这个不一样的自媒体人。本文GitHubhttps://github.com/hugogoos/Excel(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.co
Stella981 Stella981
3年前
Excel技巧—开始菜单之格式刷六大功能
点赞再看,养成习惯;千里之行,始于足下。微信搜索【亦心Excel】关注这个不一样的自媒体人。本文GitHubhttps://github.com/hugogoos/Excel(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.co
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这