Excel工作表翻译不便?不同场景下利用函数和程序快速实现

托福2025-08-28 11:09:51佚名

[]]

一、在wps中进行翻译

WPS是广泛应用的办公软件,其开发者是金山公司。自从推出WPSAI之后,金山公司增加了许多便利的功能,其中就含有翻译服务。新版WPS已经内置了翻译工具,能够借助WPSAI进行单元格内容的批量转换,现阶段仅能实现英文与中文之间的互译。

利用WPSA进行翻译

比如,需要将A栏内的汉字信息转变成B栏里的对应译文,能够运用以下转换方案。

=WPSAI.TRANSLATE(A1,"英文")

如果是中译英则可以使用

=WPSAI.TRANSLATE(A1,"中文")

而且这种方法无论是否是wpsai会员都可以使用。

二、在Excel中进行翻译

Excel 365内置了翻译功能:(),不过该功能在部分情况下会因网络状况不佳而出现不稳定现象,具体可以参考下图。

在Excel 365中调用翻译函数

借助()函数,我们可以使用后述方式,来获取有道翻译的结果,翻译A1单元格信息之后,接着点击右下角十字符号,从而实现批量填充操作。

调用网络服务,链接地址为http://e.anyoupin.cn/eh3/,后面跟参数youdao和单元格A1的内容,形成完整的请求网址进行数据获取

这种方式的长处在于能自动识别A1文本是中文文本还是英文文本,因此操作起来比较容易,也方便快捷。不过要留意,这种手段只能在Excel软件里运用,在WPS软件上不适用。它的翻译效果通常不是很好,或许赶不上人工智能翻译的水平,所以如果特别看重翻译效果的话,就不建议采用这种方法。

Excel翻译函数_WPSAI翻译功能_汉译英在线翻译免费

在Excel中实现自动翻译三、在 中翻译

若能开启汉译英在线翻译免费,便可通过其内含的转换工具:指定区域,源语言,目标语言来转换内容。这种操作借助的是系统自带的跨语言服务,能够处理多种语言,不过前提是需要特定的网络环境配合。

在 中进行翻译四、利用进行在线文档翻译

WPS在线文档已经能够实现调用,并且内含多种常用模型。因此,我们可以编写相关代码,借助360翻译服务,免费完成单元格内容的翻译。这段代码针对的是将A1:A2单元格中的中文翻译成英文汉译英在线翻译免费,若需进行英文到中文的转换,只需将data参数里的'eng'调整为'1'即可。

import requests
url = 这个网址是搜狗翻译的首页搜索路径,用户可以通过这个链接进行多语言之间的互译工作,它支持多种语言的输入和输出转换,为语言不通的人们提供了便捷的翻译服务,网址中包含了网站的基本域名和搜索功能的后缀部分。
# 读取Excel的A列内容
df = xl("$A$1:$A$2", headers=None, sheet_name="Sheet1")
# 初始化起始写入位置
start_row = 1
for word in df[0]:
  try:
    data = {
        'eng': '2',
        'validate': '',
        'ignore_trans': '0',
        'query': word,
    }
    headers = {
        'useragent': 这个浏览器的标识信息显示,它运行在安卓六零系统上,设备型号为内森五,构建版本是MRA58N,基于WebKit五三七点三六内核,具备类似Gecko的渲染引擎,属于Chrome系列,版本号为128,专为移动设备设计,兼容Safari五三七点三六,同时标注了Edg浏览器的版本为128点零零点零零点零零,
        'pro': 'fanyi'
    }
    response = requests.post(url=url, headers=headers, data=data).json()
    # 获取翻译结果
    translated_text = response['data']['fanyi']
    # 将翻译结果写入B列对应的单元格
    write_xl(translated_text, f"$C${start_row}", sheet_name="Sheet1")
    # 增加行号以写入下一行
    start_row += 1

汉译英在线翻译免费_Excel翻译函数_WPSAI翻译功能

except Exception as exc: print(exc)

五、调用翻译API进行翻译

处理多个Excel文件的翻译工作,为了提升翻译效率,同时确保翻译的精确性,我们依然需要借助调用机器翻译的接口,这样能够更加迅速地完成翻译,并且翻译结果的准确度相对较高。例如,我们可以使用调用小牛翻译的接口,因为它每天都会提供20万字的免费翻译额度,这个量足以满足我们日常的翻译需求。实现代码如下:

import openpyxl
import os
import json
import random
from hashlib import md5
import requests
apikey="<小牛机器翻译API>"
workbooks = [wb for wb in os.listdir(os.getcwd()) if wb.endswith('.xlsx')]
def lang():
    with open("config.txt","r",encoding="utf-8") as f:
        line=f.readlines()
        from_lang,to_lang=line[0].strip().split("|")
    return from_lang,to_lang
def get_lst():
    for workbook in workbooks:
        wb = openpyxl.load_workbook(workbook)
        ws = wb.active
        for cell_0, cell_1 in zip(ws['A'], ws['B']):
            if cell_0.value is not None:
                try:
                    cell_1.value = translate(str(cell_0.value).strip())
                except Exception as exc:
                    print(exc)
        wb.save(workbook)
        
def make_md5(s, encoding='utf-8'):
    return md5(s.encode(encoding)).hexdigest()
def translate(sentence):
    from_lang, to_lang = lang()
    apikey="<小牛机器翻译的API>"
    url = 这个网址指向牛翻译服务器提供的翻译接口,后面跟着英文问号
    data = {"from": from_lang, "to": to_lang, "apikey": apikey, "src_text": sentence}
    res = requests.post(url, data = data)
    res_dict = json.loads(res.text)
    if "tgt_text" in res_dict:
        result = res_dict['tgt_text']
    else:
        result = ""
    return result
get_lst()

另外,要创建一个文本文件:.txt,里面填入相关内容,这个文件要与py文件存放在同一个位置,它的作用是确定翻译时使用的语言,例如从英语转为中文时,可以填写:en|zh,其中en部分也可以换成auto,以便系统自动识别来源语言。

en|zh

六、学后总结

翻译服务如今已融入众多办公应用,用户可根据实际需求灵活选用,针对翻译精度要求不高的职场人员,上述方案较为便捷易行,若追求更高标准的严谨性和精确度,可借助计算机辅助翻译工具或大型语言系统进行翻译,并完成后续的修订与审核工作。

总而言之,针对单个文件的翻译,推荐借助Excel和WPS自带的翻译功能完成,而处理多个文件时,可以借助软件或CAT工具来调用机器翻译的API,亦或是采用小牛机器翻译提供的文档翻译API接口来实施翻译工作。

相关推荐

猜你喜欢

大家正在看

换一换