Excel-переводчик пригодится всем, кто производит локализацию сайтов, интерфейсов приложений и прочих больших массивов текста.

В Excel есть встроенный переводчик от Microsoft, но со своими причудами. Например, перевести можно только одну ячейку, а что делать, когда их сотни?

Можно попытаться использовать возможности VBA для использования онлайн-переводчиков в Excel. Сервисы предоставляют API для подобных задач, и лимиты в них довольно большие.

Я выбрал наиболее популярные в РФ сервисы — Яндекс.Переводчик и Google.Translate.

Google Translate и Яндекс.Переводчик — замечательные продукты. Перевод с их помощью довольно качественный и при этом моментальный. Но у веб-интерфейсов этих сервисов есть свои недостатки. Например, ограничения по количеству знаков. Поэтому в !SEMTools были реализованы функции и процедуры для перевода текста на популярные языки. Ниже подробнее о том, как ими воспользоваться.

Процедуры массового перевода

Использовать процедуры несколько удобнее, чем функции, т.к. все действия осуществляются парой кликов мыши. Доступен перевод с русского на 5 популярных языков и обратно:

Для редких случаев перевода с иностранного на иностранный можно воспользоваться отдельной процедурой с выбором языка. Она поддерживает выбор 12 наиболее популярных языков.

Перевод на разные языки в Excel

Бесплатные Функции GTranslate и YaTranslate

Функции доступны всем бесплатно — нужно только скачать !SEMTools и подключить надстройку к вашему Excel.

Синтаксис функций аналогичен таковому в Google Spreadsheets:

=YaTranslate(A1;"en";"ru")
=GTranslate(A1;"en";"ru")

С функциями можно использовать любой язык из предложенных на сервисах.

Функции перевода в Excel
Функции перевода текста с помощью официального API Яндекс.Переводчика и с помощью Google Translate в Excel

Таблица доступных для перевода языков — Яндекс.Переводчик

ЯзыкКодЯзыкКодЯзыкКодЯзыкКод
азербайджанскийazдатскийdaмальтийскийmtтайскийth
албанскийsqивритheмакедонскийmkтагальскийtl
амхарскийamидишyiмаориmiтамильскийta
английскийenиндонезийскийidмаратхиmrтатарскийtt
арабскийarирландскийgaмарийскийmhrтелугуte
армянскийhyитальянскийitмонгольскийmnтурецкийtr
африкаансafисландскийisнемецкийdeудмуртскийudm
баскскийeuиспанскийesнепальскийneузбекскийuz
башкирскийbaказахскийkkнорвежскийnoукраинскийuk
белорусскийbeканнадаknпанджабиpaурдуur
бенгальскийbnкаталанскийcaпапьяментоpapфинскийfi
бирманскийmyкиргизскийkyперсидскийfaфранцузскийfr
болгарскийbgкитайскийzhпольскийplхиндиhi
боснийскийbsкорейскийkoпортугальскийptхорватскийhr
валлийскийcyкосаxhрумынскийroчешскийcs
венгерскийhuкхмерскийkmрусскийruшведскийsv
вьетнамскийviлаосскийloсебуанскийcebшотландскийgd
гаитянский (креольский)htлатыньlaсербскийsrэстонскийet
галисийскийglлатышскийlvсингальскийsiэсперантоeo
голландскийnlлитовскийltсловацкийskяванскийjv
горномарийскийmrjлюксембургскийlbсловенскийslяпонскийja
греческийelмалагасийскийmgсуахилиsw
грузинскийkaмалайскийmsсунданскийsu
гуджаратиguмалаяламmlтаджикскийtg

Таблица обозначений языков — Google Translate

AfrikaansafGalicianglLatinlaSesothost
AlbaniansqGeorgiankaLatvianlvShonasn
AmharicamGermandeLithuanianltSindhisd
ArabicarGreekelLuxembourgishlbSinhala (Sinhalese)si
ArmenianhyGujaratiguMacedonianmkSlovaksk
AzerbaijaniazHaitian CreolehtMalagasymgSloveniansl
BasqueeuHausahaMalaymsSomaliso
BelarusianbeHawaiianhaw (ISO-639-2)MalayalammlSpanishes
BengalibnHebrewhe or iwMaltesemtSundanesesu
BosnianbsHindihiMaorimiSwahilisw
BulgarianbgHmonghmn (ISO-639-2)MarathimrSwedishsv
CatalancaHungarianhuMongolianmnTagalog (Filipino)tl
Cebuanoceb (ISO-639-2)IcelandicisMyanmar (Burmese)myTajiktg
Chinese (Simplified)zh-CN or zh (BCP-47)IgboigNepalineTamilta
Chinese (Traditional)zh-TW (BCP-47)IndonesianidNorwegiannoTelugute
CorsicancoIrishgaNyanja (Chichewa)nyThaith
CroatianhrItalianitPashtopsTurkishtr
CzechcsJapanesejaPersianfaUkrainianuk
DanishdaJavanesejvPolishplUrduur
DutchnlKannadaknPortuguese (Portugal, Brazil)ptUzbekuz
EnglishenKazakhkkPunjabipaVietnamesevi
EsperantoeoKhmerkmRomanianroWelshcy
EstonianetKoreankoRussianruXhosaxh
FinnishfiKurdishkuSamoansmYiddishyi
FrenchfrKyrgyzkyScots GaelicgdYorubayo
FrisianfyLaoloSerbiansrZuluzu

F. A. Q.

Можно ли сделать собственный переводчик в Excel?

Можно составить словарь слов и их аналогов на другом языке — по тому же принципу, как это сделано в моей процедуре лемматизации. Но я сразу отбросил эту затею. Дело в том, что пословный перевод редко получается корректным.
Например, фразовые глаголы в английском языке уже приносят страдания тем, кто их учит, т.к. два слова рядом переводятся совсем не так, как по отдельности.
Нужно переводить не только слова, но и фразы, определяя взаимоотношения слов. Более того, одни и те же сочетания могут по разному переводиться в зависимости от пунктуации — ее тоже нужно учитывать.
Все это делает задачу составления собственного переводчика очень сложной. Гораздо проще воспользоваться готовыми решениями.

Можно ли использовать с !SEMTools собственный API-токен? Наверняка ежемесячной квоты Яндекс.Переводчика не хватит на всех пользователей.

Да, для этого в !SEMTools предусмотрена отдельная простая пошаговая процедура. Она откроет страницу, где вам останется сгенерировать токен, и вставить его в специальное окошко и нажать ОК. После этого ваш токен сохранится внутри надстройки и будет использоваться при переводе текста как формулами, так и процедурами.получение токена Яндекс.переводчик

Можно ли посмотреть статистику количества переведенных символов по месяцам?

Если вы пользуетесь API Яндекс.Переводчик, то да, после регистрации токена и внесения его в надстройку вы сможете увидеть личную статистику использования API. статистика Яндекс.Переводчика