近日,刷到一条抖音,看到用Excel进行中英文翻译,今天给大家讲解一种实现的方法。

在A列输入中文句子或英文句子,在B列便能得到翻译的结果,如下所示:

在B列只需要输入一个公式,便可以得到结果:

在B2输入的公式为:

=TRIM(SUBSTITUTE(MID(SUBSTITUTE(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&A2&"&doctype=json"),"""tgt"":""",REPT(" ",500)),500,500),"""}]]}",""))

有可能公式不会正常显示,下面将完整公式用图片格式再发一次:

公式解释:

❶首先使用webservice函数嵌套使用,去有道翻译里面获取数据,WEBSERVICE("http://fanyi.youdao.com/translate?&i="&A2&"&doctype=json")

这部分公式(后面简称公式❶)得到的数据结果是:

{"type":"ZH_CN2EN","errorCode":0,"elapsedTime":0,"translateResult":[[{"src":"你好啊","tgt":"How are you?"}]]}

很明显,我们想把"tgt":"后面的结果进行输出显示

❷所以使用SUBSTITUTE(公式❶,"""tgt"":""",REPT(" ",500)),将"tgt":"替换成500个空格,所以得到的结果是:

{"type":"ZH_CN2EN","errorCode":0,"elapsedTime":0,"translateResult":[[{"src":"你好啊",500个空格How are you?"}]]}

❸再使用Mid(公式❷,500,500),从第500个字符开始取,那么前面所有的数据会自动被删除掉,然后再取500个数(或者更大都可以),这部分数据得到的结果是:

少数空格How are you?"}]]}

❹使用我们将"}]]}替换成空字符,也就是使用公式substitude(公式❸,"""}]]}",""),得到的结果是:

少数空格How are you?

❺最后使用trim函数将少数空格去除,trim(公式❹),便得到了我们最终的结果

How are you?

上面是公式的理解过程,这套公式经常用来提取特定字符后面的数据,也是万金油公式之一吧,理解了对提取数据技巧上有所帮助,

如果没理解也没关系,我们直接套用公式使用

你学会了吗?欢迎在下方留言讨论!

--------------------------

欢迎关注,更多精彩内容持续更新中....