excel怎麼批量翻譯中文(Excel居然可以實現批量自動翻譯)
2023-07-27 00:57:42 1
有時候我們的excel表格中需要將一列都翻譯成中文或英文,如果一個一個的去做的話,很麻煩,那麼我們有沒有一個方法讓它實現批量自動翻譯呢?答案當然是:有!
我們的目標是實現以下的效果,左邊是原文,右邊是中文和英文的組合:
在這裡,我們採用youdao在線翻譯的方式,在單元格中輸入:=FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&D3&"&doctype=xml&version"),"//translation"),這表示到youdao的網站上查詢 D3 單元格(即原文)的翻譯結果,並抓取相應的信息。我們可以得到如下結果,基本可以,但和我們想要的還有一定的差別:
我們現在就需要將原文和譯文連接在一起,使用的方法是,在兩個字符串中增加一個回車字符char(10),將這個公式修正為:=D3&CHAR(10)&FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&D3&"&doctype=xml&version"),"//translation"), 有下劃線的部分就是增加的內容。
就此得到了想要的格式(中文在上面,英文在下面),但如果原文是英文的話,英文就在上面了,我們需要智能的判定方法。
所以,我們現在需要判別原因是中文還是英文,然後再按固定的格式輸出。在此,我們採用LEN和LENB。
它們都是計算字符的長度,LEN是按字符數算的,無論是漢字還是數字,都是按1來計數,LENB是按字節數算的。數字、字母、英文、半角狀態下輸入的標點符號按1計算的,漢字、全形狀態下輸入的標點符號按2計算。
所以,我們就可以藉此智能區分中英文。
因此,我們需要修改公式為:
=IF(LEN(D3)LENB(D3),D3&CHAR(10)&@FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&D3&"&doctype=xml&version"),"//translation"),@FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&D3&"&doctype=xml&version"),"//translation")&CHAR(10)&D3),得到的結果如下:
當然,這個翻譯結果只能作為參考,最終還是需要自己確認的。
後續,我再分享一些函數、圖表、數據透視圖方面的詳細信息,希望大家喜歡。
,