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

Дисклеймер:
Под большими массивами понимаются сотни строк. 
Для перевода тысяч строк и десятков тысяч слов бесплатных решений не существует в природе. Увы и ах.

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

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

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

К сожалению, с сентября 2020 бесплатный API Яндекс.Переводчик отключен Яндексом, в текущей версии !SEMTools только Google.

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

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

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

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

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

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

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

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

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

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

Таблица обозначений языков для перевода

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?

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

Подходит ли функционал для объемов в тысячи строк?

Нет, данный функционал основан на бесплатном API Google, который позволяет переводить текст небольшими объемами в десятки (если небольшими порциями, а не сразу, то сотни) строк и сотни (до нескольких тысяч) слов. Если попытаться перевести сотни строк и тысячи-десятки тысяч слов одновременно, Google наложит временный бан на IP. Как правило это несколько часов, но, вероятно, после нескольких временных банов можно получить пожизненный бан IP.
Для перевода в промышленных масштабах нужно покупать специализированные решения, основанные на платном API.

Будет ли в !SEMTools включена поддержка платных API перевода?

Если вас интересует подобный функционал и вы готовы платить за платный API (расценки довольно небольшие), сообщите об этом мне (Дмитрий Тумайкин, контакты).