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

Stella981
• 阅读 375

点赞再看,养成习惯;金玉其外,败絮其中。
微信搜索【亦心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技巧—一个公式实现中英文翻译

点赞
收藏
评论区
推荐文章
技术小男生 技术小男生
2个月前
linux环境jdk环境变量配置
1:编辑系统配置文件vi/etc/profile2:按字母键i进入编辑模式,在最底部添加内容:JAVAHOME/opt/jdk1.8.0152CLASSPATH.:$JAVAHOME/lib/dt.jar:$JAVAHOME/lib/tools.jarPATH$JAVAHOME/bin:$PATH3:生效配置
光头强的博客 光头强的博客
2个月前
Java面向对象试题
1、请创建一个Animal动物类,要求有方法eat()方法,方法输出一条语句“吃东西”。创建一个接口A,接口里有一个抽象方法fly()。创建一个Bird类继承Animal类并实现接口A里的方法输出一条有语句“鸟儿飞翔”,重写eat()方法输出一条语句“鸟儿吃虫”。在Test类中向上转型创建b对象,调用eat方法。然后向下转型调用eat()方
刚刚好 刚刚好
2个月前
css问题
1、在IOS中图片不显示(给图片加了圆角或者img没有父级)<div<imgsrc""/</divdiv{width:20px;height:20px;borderradius:20px;overflow:h
blmius blmius
1年前
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
小森森 小森森
2个月前
校园表白墙微信小程序V1.0 SayLove -基于微信云开发-一键快速搭建,开箱即用
后续会继续更新,敬请期待2.0全新版本欢迎添加左边的微信一起探讨!项目地址:(https://www.aliyun.com/activity/daily/bestoffer?userCodesskuuw5n)\2.Bug修复更新日历2.情侣脸功能大家不要使用了,现在阿里云的接口已经要收费了(土豪请随意),\\和注意
晴空闲云 晴空闲云
2个月前
css中box-sizing解放盒子实际宽高计算
我们知道传统的盒子模型,如果增加内边距padding和边框border,那么会撑大整个盒子,造成盒子的宽度不好计算,在实务中特别不方便。boxsizing可以设置盒模型的方式,可以很好的设置固定宽高的盒模型。盒子宽高计算假如我们设置如下盒子:宽度和高度均为200px,那么这会这个盒子实际的宽高就都是200px。但是当我们设置这个盒子的边框和内间距的时候,那
艾木酱 艾木酱
1个月前
快速入门|使用MemFire Cloud构建React Native应用程序
MemFireCloud是一款提供云数据库,用户可以创建云数据库,并对数据库进行管理,还可以对数据库进行备份操作。它还提供后端即服务,用户可以在1分钟内新建一个应用,使用自动生成的API和SDK,访问云数据库、对象存储、用户认证与授权等功能,可专
Stella981 Stella981
1年前
Excel中关于日期时间的小知识小技巧,你还记得多少?
点赞再看,养成习惯;星星之火,可以燎原。微信搜索【亦心Excel】关注这个不一样的自媒体人。本文GitHubhttps://github.com/hugogoos/Excel(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.co
Wesley13 Wesley13
1年前
MySQL查询按照指定规则排序
1.按照指定(单个)字段排序selectfromtable_nameorderiddesc;2.按照指定(多个)字段排序selectfromtable_nameorderiddesc,statusdesc;3.按照指定字段和规则排序selec
Wesley13 Wesley13
1年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
helloworld_28799839 helloworld_28799839
2个月前
常用知识整理
Javascript判断对象是否为空jsObject.keys(myObject).length0经常使用的三元运算我们经常遇到处理表格列状态字段如status的时候可以用到vue