Языка для ячейки в excel

  • Перевод в Excel с помощью API Deepl
  • Перевод текста через Google Translate
    • Бесплатный перевод с Google Translate
    • Платный API Google Translate
    • Бесплатная Функция GTranslate
    • Таблица обозначений языков для перевода Google
  • F. A. Q.

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

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

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

Deepl — это сервис перевода, основанный на глубоком (машинном) обучении и нейросетях. Нетрудно догадаться из названия (Deep Learning – глубокое обучение).

Deepl — заслуженно крутой переводчик, качество перевода точно не уступает и часто превосходит конкурентов (а это, на минуточку, Google, Microsoft и другие гиганты, чей бизнес изначально был построен на текстовом анализе). О том, что их перевод лучше остальных, основатели проекта не скромничают на своём сайте. И с ними нельзя не согласиться — качество переведенного текста и в самом деле практически не требует дополнительной редактуры.

Deepl популярен в среде SEO-специалистов, которые локализуют тексты с его помощью. Есть подозрения, что Google может пессимизировать тексты, переведенные им же самим, это еще один довод в пользу сторонних решений.

Deepl позволяет выбирать формальность перевода (в языках где это есть, например, в русском яркий пример Ты-Вы).

К сожалению, сейчас Deepl доступен далеко не во всех странах – нужна карточка, выпущенная банком стран EU, US, Японии и еще нескольких стран.
Но если вам нужен действительно качественный перевод – вас это вряд ли остановит.

Поддержка перевода с помощью бесплатного и платного API Deepl появилась в !SEMTools 17 февраля 2023г.

переводим текст с русского на английский в Excel с помощью Deepl

Переводим в Excel с русского на английский текст документации Deepl

Перевод текста через Google Translate

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

А что, если бы можно было пользоваться Google Translate прямо в Excel?

Это было бы просто замечательно! Поэтому я и реализовал в !SEMTools функции и процедуры для перевода текста на популярные языки.

Бесплатный перевод с Google Translate

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

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

Инструменты перевода текста в Excel (!SEMTools)

Перевод текста в Excel

Платный API Google Translate

У многих при использовании бесплатной версии переводчика возникают проблемы с превышением бесплатных лимитов. Разумеется, Google не готов абсолютно бесплатно делиться столь сложным в разработке и полезным инструментом, поэтому ограничивает “недобросовестное” использование бесплатной версии сервиса.

Альтернатива – это возможность пользоваться сервисом через платный API.

Но на текущий момент (2023 г.) Google предоставляет перевод первых 500.000 знаков бесплатно! Нужно только подключить платежный профиль, но первые 500.000 знаков деньги расходоваться не будут.

Для тех, кому нужно переводить многие сотни строк текста и многие тысячи знаков, инструмент будет очень полезен. Поддержка платного API доступна с версии 10.23.14 (февраль 2023 г.), только в полной версии надстройки.

Если вы еще не прописали ваш персональный API-токен, процедура уведомит вас о его отсутствии (и перевод, конечно же, не сработает).

Для активации токена в меню присутствует отдельная процедура:

процедура активации Google Translate API токена

После активации токена процедуры будут переводить текст в любых объемах, но будьте внимательны и следите за превышением начальной квоты в 500.000 знаков, и дальнейшим расходом средств (хотя расценки Google вполне скромные). Вся информация доступна на дашборде Google Cloud.

Как получить токен

Чтобы получить токен API Google Translate, вам потребуется:

  • Зарегистрировать Google аккаунт
  • Перейти в Google Cloud Console: https://console.cloud.google.com/apis/dashboard
  • Создать там аккаунт и подключить биллинг (потребуется зарубежная карта)
  • Активировать Cloud Translation API
  • Найти токен на вкладке Credentials: https://console.cloud.google.com/apis/api/translate.googleapis.com/credentials

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

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

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

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

Преимущество перед самими “гуглодоками” в том, что Spreadsheets зависнут и перестанут отдавать перевод раньше.

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

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

Afrikaans af Galician gl Latin la Sesotho st
Albanian sq Georgian ka Latvian lv Shona sn
Amharic am German de Lithuanian lt Sindhi sd
Arabic ar Greek el Luxembourgish lb Sinhala (Sinhalese) si
Armenian hy Gujarati gu Macedonian mk Slovak sk
Azerbaijani az Haitian Creole ht Malagasy mg Slovenian sl
Basque eu Hausa ha Malay ms Somali so
Belarusian be Hawaiian haw (ISO-639-2) Malayalam ml Spanish es
Bengali bn Hebrew he or iw Maltese mt Sundanese su
Bosnian bs Hindi hi Maori mi Swahili sw
Bulgarian bg Hmong hmn (ISO-639-2) Marathi mr Swedish sv
Catalan ca Hungarian hu Mongolian mn Tagalog (Filipino) tl
Cebuano ceb (ISO-639-2) Icelandic is Myanmar (Burmese) my Tajik tg
Chinese (Simplified) zh-CN or zh (BCP-47) Igbo ig Nepali ne Tamil ta
Chinese (Traditional) zh-TW (BCP-47) Indonesian id Norwegian no Telugu te
Corsican co Irish ga Nyanja (Chichewa) ny Thai th
Croatian hr Italian it Pashto ps Turkish tr
Czech cs Japanese ja Persian fa Ukrainian uk
Danish da Javanese jv Polish pl Urdu ur
Dutch nl Kannada kn Portuguese (Portugal, Brazil) pt Uzbek uz
English en Kazakh kk Punjabi pa Vietnamese vi
Esperanto eo Khmer km Romanian ro Welsh cy
Estonian et Korean ko Russian ru Xhosa xh
Finnish fi Kurdish ku Samoan sm Yiddish yi
French fr Kyrgyz ky Scots Gaelic gd Yoruba yo
Frisian fy Lao lo Serbian sr Zulu zu

F. A. Q.

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

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

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

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

Будет ли в !SEMTools включена поддержка других API (например, Deepl)?

Да, другие API также планируются.

Нужно перевести текст в Excel? Установите надстройку !SEMTools и переводите любые объемы текста на нужный вам язык!

Поиск символов латиницы в русском тексте

Одна из типовых ситуаций, с которой все мы однажды сталкиваемся: кто-то (возможно даже мы сами) при наборе текстовой информации в ячейку, случайно использовал английские буквы (латиницу) вместо русских (кириллицы). Допустить такую ошибку достаточно легко, особенно если учесть изощренное расположение некоторых символов в стандартной раскладке клавиатуры. Ну какому идиоту, скажите мне, пришло в голову помещать на одну клавишу две одинаковых по написанию буквы (английская «си» и русская «эс»)? Да и с другими символами не лучше. Но, как говорится, «фарш невозможно провернуть назад» — текущая раскладка давно стала стандартом и никуда от этого не деться.

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

Выискивать похожие по виду символы и проверять не являются ли они символами английской раскладки крайне муторно. Поэтому поищем более изящные варианты…

Способ 1. Шрифт без кириллицы

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

latin1.png

Способ 2. Функция IsLatin на VBA

Создадим пользовательскую функцию (назовем ее, например, IsLatin), которая будет проверять — присутствуют ли в заданной ячейке символы английского алфавита и выдавать в качестве результата логическое значение ИСТИНА или ЛОЖЬ.

Откройте редактор Visual Basic сочетанием клавиш ALT+F11 или в старых версиях Excel — через меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor), вставьте новый модуль (меню Insert — Module) и скопируйте туда текст этой функции:

Public Function IsLatin(str As String)
    str = LCase(str)
    LatinAlphbet = "*[abcdefghijklmnopqrstuvwxyz]*"
    If str Like LatinAlphbet Then
        IsLatin = True
    Else
        IsLatin = False
    End If
End Function

Закройте редактор Visual Basic и вернитесь в Excel.

Теперь в Мастере функций в категории Определенные пользователем (User Defined) можно найти нашу функцию IsLatin и воспользоваться ей. Синтаксис функции следующий:

=IsLatin(A2)

где для примера А2 — это адрес ячейки, содержащей текст

Функция выдаст значение ИСТИНА (TRUE), если найдет в тексте А2 хотя бы один символ латиницы. В противном случае функция вернет значение ЛОЖЬ (FALSE):

latin2.png

Способ 3. Подсветка символов латиницы красным цветом шрифта

Откройте редактор Visual Basic сочетанием клавиш ALT+F11 или в старых версиях Excel — через меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor), вставьте новый модуль (меню Insert — Module) и скопируйте туда текст этого макроса:

Sub ShowLatin()    
For Each c In Selection        
    For i = 1 To Len(c)            
        If (Asc(Mid(c, i, 1)) >= 65 And Asc(Mid(c, i, 1)) <= 90) Or _
               (Asc(Mid(c, i, 1)) >= 97 And Asc(Mid(c, i, 1)) <= 122) Then
                c.Characters(Start:=i, Length:=1).Font.ColorIndex = 3            
        End If        
    Next i
Next c
End Sub

Закройте редактор Visual Basic и вернитесь в Excel. Если теперь выделить интересующий диапазон ячеек (только не весь столбец или лист — а то считать до конца дня будет!) и запустить наш макрос с помощью сочетания клавиш ALT+F8 или через меню Сервис — Макрос — Макросы (Tools — Macro — Macros), то символы латиницы выделятся красным цветом шрифта:

latin3.png

Ссылки по теме

  • Подсветка латиницы с помощью надстройки PLEX
  • Что такое макросы, куда вставлять код макроса, как их использовать

В этой статье вы настроили и использовали надстройки Excel Переводчик функций. Функция Переводчик ориентирована на людей, которые используют версии Excel на разных языках, и требуют помощи в поиске нужной функции на нужном языке или даже переводе целых формул с одного языка на другой.

Переводчик функций

  • Помогает пользователям, знакомым с английскими функциями Excel, продуктивно работать с локализованными версиями Excel.

  • Позволяет пользователям полностью переводить формулы на родной язык.

  • Поддерживает все локализованные языки и функции Excel (80 языков и 800 функций).

  • Обеспечивает эффективный поиск любой части имени функции на обоих выбранных языках.

  • Отображает прокручиваемый список по категориям для английских функций и соответствующие локализованные функции.

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

  • Локализован на английский, датский, немецкий, испанский, французский, итальянский, японский, корейский, нидерландский, португальский (Бразилия), русский, шведский, турецкий и китайский (традиционное письмо и набор сложных знаков) языки.

Установка надстройки «Переводчик функций»

Надстройка Переводчик функций доступна бесплатно в Microsoft Store. Чтобы установить ее, выполните указанные ниже действия.

  1. Запустите приложение Microsoft Excel.

  2. Перейдите на вкладку Вставка.

  3. Нажмите кнопку Магазин на ленте.

  4. Откроется диалоговое окно «Надстройки Office». В верхней части окна выберите пункт Магазин, а слева — Производительность.

  5. Введите в поле поиска запрос Functions Translator.

  6. Нажмите зеленую кнопку Добавить справа от найденной надстройки «Переводчик функций». Она будет установлена.

Настройка Переводчика функций

После установки надстройки Переводчик функций на вкладке Главная справа появятся две новых кнопки.

замещающий текст

Они открывают в диалоговом окне Переводчик функций области Справочник и Переводчик соответственно. Исключением является первый запуск надстройки Переводчик функций — в этом случае открывается область Добро пожаловать:

Область "Добро пожаловать" Переводчика функций в Excel

Рабочая область Переводчика функций всегда открывается в правой части Excel.

Вы можете перейти непосредственно к переводу, щелкнув ссылку Пропустить > в правом верхнем углу, но мы рекомендуем нажать кнопку Приступим, чтобы перейти в диалоговое окно языковых параметров. Здесь вы можете выбрать языки С и На по умолчанию (их можно изменить в любое время).

Область языковых параметров Переводчика функций

Здесь вы можете указать языковые параметры. Хотя Переводчик функций поддерживает все языки, на которые локализованы функции Excel, в каждом случае вы можете использовать только пару из них. Доступно любое сочетание языков, и приложение Excel запомнит ваш выбор. Вы в любое время можете изменить языковую пару в области Настройки, которую можно открыть во всех основных областях Переводчика функций. 

По умолчанию в качестве языка «С» и «На» будут заранее заполнены английский язык с языком «От», а языком установки Excel языком «На». Если язык установки является одним из языков, локализованных для Переводчик,пользовательский интерфейс будет отображаться на локализованных языках. Выберите языковую пару, нажав кнопку Начать работу.

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

С помощью зеленой кнопки Стрелка вверх/стрелка вниз между параметрами «С» и «На» можно менять языки С и На местами.

Настройки

Вы можете открыть область Настройки, щелкнув значок настроек в правом нижнем углу любой из трех основных областей.

замещающий текст

Кроме того, вы можете в любое время изменить языки На и От, которые могут быть вам интересны. Если щелкнуть стрелку влево в верхней части области, вы вернетсяе в главную.

Область "Настройки" Переводчика функций

Область «Справочник»

В области Справочник есть раскрывающийся список Категория функций, с помощью которого можно отобразить все функции в указанной категории для языков С (слева) и На (справа). Если вы не знаете, к какой категории относится функция, можно использовать параметр Все.

По умолчанию функции сортируются в алфавитном порядке языка С (в данном случае английского), рядом с которым отображается маленькая стрелка вниз. Вы можете сортировать функции в обычном или обратном алфавитном порядке, а также выбирать язык сортировки (С или На). Просто щелкните название языка, по которому нужно отсортировать функции, а для сортировки в обратном порядке щелкните его еще раз. Стрелка указывает направление сортировки.
 

Область "Справочник" Переводчика функций

Щелкните имя функции в одном из столбцов, чтобы открыть область Словарь с кратким описанием функции.

Область «Словарь»

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

Область "Словарь" Переводчика функций

Обнаружив нужное имя функции, вы можете щелкнуть его, чтобы отобразить языковую пару и определение функции. Если щелкнуть имя функции в области Справочник, также откроется область Словарь с указанием языковой пары и описания функции.

Примечания: 

  • У некоторых функций нет описаний.

  • Описания функций предоставляются только на английском языке.

  • Чтобы посмотреть локализованное описание, перейдите на вкладку «Формулы», щелкните нужную категорию функций и наведите указатель мыши на требуемую функцию. В Excel отобразится описание функции на языке установки.

Щелкните значок лампочки в области Словарь, чтобы открыть область Отзыв о переводе, где вы можете оставить отзыв об определенном переводе.

Область отзывов о Переводчике функций

Область «Переводчик»

В области Переводчик можно полностью перевести формулу с одного языка на другой. Ниже приведен пример области Переводчик, где формула переведена с английского языка на французский:

Область "Переводчик" Переводчика функций с функцией, переведенной с английского языка на французский

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

Ручная настройка разделителей

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

Изображение со списком кнопок под полями "С" и "На"

Под полями для языков «С» и «На» отображаются показанные выше кнопки. Первая кнопка вставляет текст из поля выше в активную ячейку. Эту кнопку можно использовать для вставки локализованной формулы в нужную ячейку.

Остальные кнопки распределены по соответствующим функциям: десятичный разделитель, разделитель столбцов для формул массива и разделитель элементов списка.

  • Десятичный разделитель

    • Десятичным разделителем может быть точка или запятая.

  • Разделитель столбцов для формул массива

    • Этот разделитель используется в формулах массива.

  • Разделитель элементов списка

    • С английским языком в качестве десятичного разделителя обычно используется точка, а в качестве разделителя элементов списка — запятая. В некоторых европейских языках десятичным разделителем является запятая, а разделителем элементов списка другой символ, а именно точка с запятой.

Мгновенно переводить выбранную ячейку

Если установлен флажок Мгновенно переводить выбранную ячейку в области Переводчик, надстройка будет пытаться перевести формулу в любой выбираемой ячейке. Она будет копировать формулу из выбранной ячейки в поле языка На и мгновенно переводить ее в поле языка С.

Примечания: 

  • Функция Мгновенно переводить выбранную ячейку не поддерживается в Microsoft Excel 2013 и более ранних версий.

  • В режиме правки функция Мгновенно переводить выбранную ячейку не активна. При выходе из режима правки функция мгновенного перевода активируется снова.

Отзывы и предложения

Мы надеемся, что надстройка Переводчик функций поможет вам эффективнее работать с локализованными версиями Excel, и будем рады вашим отзывам. Сообщите нам о функциях, перевод которых можно улучшить, и поделитесь мнением о работе самой надстройки.

Если у вас есть предложения по поводу улучшения работы надстройки и локализации функций в общем, обязательно отправьте их нам!

Команда Переводчика функций, Мартин и Вадим

fxlator@microsoft.com

Примечание: Мы рассмотрим каждый отзыв индивидуально, но не можем гарантировать ответ на каждый отзыв. Не включайте в отзыв файлы, содержащие личные сведения.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Как задать разные языки для столбцов в Excel?

Автор темы: Anatoly Dragan

Anatoly Dragan

Anatoly Dragan  Identity Verified
Израиль
Local time: 13:10
иврит => русский
+ …

Jul 18, 2014


Доброго времени суток.
Сначала было интересно переводить: а как же они мыслят-думают проклятые капиталисты? с год назад наткнулся на этот симпатичный ресурс. Стал знакомиться.
И вот пришёл до мысли создать свой собственный словарь-глоссарий в Экселе для Традоса.
И вот бьюсь с месяц — как для каждого стобика задать его собственный язык: Hebrew, English, Russian
Может кто подскажет? Уверен, что что нибудь очень простое
Спасибо заранее

esperantisto

esperantisto  Identity Verified
Local time: 13:10
Член ProZ.com c 2006
английский => русский
+ …

ЛОКАЛИЗАТОР САЙТА

А зачем? Jul 18, 2014


См. заголовок.

Andriy Bublikov

Andriy Bublikov  Identity Verified
Украина
Local time: 13:10
французский => русский
+ …Модератор данного форума

Если уж так нужен глоссарий, воспользуйтесь SDL MultiTerm Jul 18, 2014


Как импортировать из Excel В Multiterm почитать можно здесь:

http://www.proz.com/forum/russian/135887-Полезные_советы_tips_and_tricks.html

а также в традосовских мануалах.

Anatoly Dragan

Anatoly Dragan  Identity Verified
Израиль
Local time: 13:10
иврит => русский
+ …

Автор темы

Спасибо большое Jul 29, 2014


Andriy Bublikov wrote:

Как импортировать из Excel В Multiterm почитать можно здесь:

http://www.proz.com/forum/russian/135887-Полезные_советы_tips_and_tricks.html

а также в традосовских мануалах.

Я планирую создать ТБ из трех языков и каждый раз когда я вношу термин в ячейку и там другой язык приходится клацать клавишами
а мануалы изучаю вот научился подключать — активировать ТМ. Теперь пытаюсь объединить несколько памятей по одной теме
Тем не менее спасибо за отклик

Natalie

Natalie  Identity Verified
Польша
Local time: 12:10
Член ProZ.com c 2002
английский => русский
+ …Модератор данного форума

ЛОКАЛИЗАТОР САЙТА

Ответ несложно найти в гугле Jul 29, 2014


http://superuser.com/questions/436991/setting-the-content-language-of-cells-in-excel

Anatoly Dragan

Anatoly Dragan  Identity Verified
Израиль
Local time: 13:10
иврит => русский
+ …

Автор темы

Но где эти скрипты макросы написать Aug 2, 2014


Natalie wrote:

http://superuser.com/questions/436991/setting-the-content-language-of-cells-in-excel

Отлично!!! Но где этот скрипт писать прописать где то в экселе наверное?

Natalie

Natalie  Identity Verified
Польша
Local time: 12:10
Член ProZ.com c 2002
английский => русский
+ …Модератор данного форума

ЛОКАЛИЗАТОР САЙТА

Help / Tutorial Aug 2, 2014


В сети есть множество пособий по Экселю — пощите, это совсем нетрудно.

Кстати, насколько я вижу, можно спросить даже на http://superuser.com/questions/436991/setting-the-content-language-of-cells-in-excel — там внизу есть окошко.

[Edited at 2014-08-02 17:56 GMT]

To report site rules violations or get help, contact a site moderator:

You can also contact site staff by submitting a support request »

Как задать разные языки для столбцов в Excel?

TM-Town

Manage your TMs and Terms … and boost your translation business

Are you ready for something fresh in the industry? TM-Town is a unique new site for you — the freelance translator — to store, manage and share translation memories (TMs) and glossaries…and potentially meet new clients on the basis of your prior work.

More info »

Trados Studio 2022 Freelance

The leading translation software used by over 270,000 translators.

Designed with your feedback in mind, Trados Studio 2022 delivers an unrivalled, powerful desktop
and cloud solution, empowering you to work in the most efficient and cost-effective way.

More info »

Данный макрос автоматизирует процесс переключения раскладки клавиатуры (смену языков ввода) при работе с таблицами в Excel.

К примеру, вы заносите данные в таблицу, где в некоторые столбцы требуется вводить русские слова (фамилия, имя, и т.п.), а в другие столбцы — английские (марка и модель авто, и т.д.)

Чтобы каждый раз не переключать раскладку вручную — можно воспользоваться WinAPI функцией ActivateKeyboardLayout

Вставьте этот код в модуль листа:

Private Declare Function ActivateKeyboardLayout _
                          Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long
Const kb_lay_ru As Long = 68748313, kb_lay_en As Long = 67699721
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Select Case Target.Column    ' в зависимости от номера столбца активной ячеки
        Case 1 To 3, 6    ' для столбцов Имя, Фамилия, Номер машины, Цвет
            ВключитьРусскуюРаскладку
        Case 4, 5:    ' для столбцов Марка авто, Модель
            ВключитьАнглийскуюРаскладку
        Case Else:    ' ничего не делаем (оставляем текущую раскладку)
    End Select
End Sub
 
Sub ВключитьРусскуюРаскладку()
    ' Переключить на русский язык
    x = ActivateKeyboardLayout&(kb_lay_ru, 0)
End Sub
 
Sub ВключитьАнглийскуюРаскладку()
    ' Переключить на английский язык
    x = ActivateKeyboardLayout&(kb_lay_en, 0)
End Sub
  • 37536 просмотров

Не получается применить макрос? Не удаётся изменить код под свои нужды?

Оформите заказ у нас на сайте, не забыв прикрепить примеры файлов, и описать, что и как должно работать.

Содержание

  • 1 Перевод с помощью Microsoft Translator
  • 2 Реализация Яндекс переводчика в Excel
  • 3 Способ 1. Формула
  • 4 Способ 2. Формат ячеек
  • 5 Первый способ транслитерировать русский текст
  • 6 Второй способ перевода русского текста в транслит в Excel с помощью пользовательской функции

Знаете ли вы, что в Excel реализован инструмент перевода текста на другой язык. С помощью мини-переводчика вы можете перевести фразу, абзац или весь файл, написанный на другом языке. Данный элемент использует функционал программы Microsoft Translator, который по умолчанию содержится в офисных приложениях Microsoft. В сегодняшней статье я опишу, как воспользоваться данным функционалом. Помимо этого, мы рассмотрим, как с помощью функций ВЕБСЛУЖБА и ФИЛЬТР.XML реализовать Яндекс переводчик в нашей Excel книге.

Перевод с помощью Microsoft Translator

Итак, у вас имеется текст, который необходимо перевести на другой язык. В нашем случае, я хочу перевести текст, находящийся в ячейках A1:A3 с русского на английский. Переходим во вкладку Рецензирование в группу Язык, щелкаем по кнопке Перевод. В правой части книги появится панель Справочные материалы, в которой необходимо указать переводимый текст и языки исходный и на который перевести.

Чтобы задать текст для перевода, есть два пути. Первый, банальный, ручками набиваем текст в поле Искать, указываем язык перевода, жмем кнопку со стрелкой, слева от поля, ждем пару секунд пока Microsoft Translator подберет нужные слова и наслаждаемся результатом перевода в этой же панельке.

Второй вариант более технологичный и предполагает, что текст, который требуется перевести, уже имеется на листе. Для этого, удерживая клавишу Alt, щелкаем по ячейке с переводимым текстом, в поле Искать панели Справочные материалы вы увидите фразу с выбранной ячейки, а ниже ее перевод. Если вы нажмете кнопку Вставить, находящуюся под переводом, Excel заменит исходный текст в ячейке на переведенный.

Данный инструмент прост в обращении и особенно выручает, если в Excel книге попадаются незнакомые слова.

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

Итак, как я уже писал в статье об автоматическом обновлении валют, в Excel 2013 реализован инструмент импорта данных в формате XML, с помощью функции ВЕБСЛУЖБА и ФИЛЬТР.XML. Первая функции использует API веб службы для выгрузки данных из интернета, вторая – возвращает конкретную информацию из выгруженного XML. Для реализации задуманной идеи в Excel мы воспользуемся переводчиком Яндекс, который имеет свой API. Переходим на страницу API Перевода Яндекс, где можно прочитать всю документацию и правила оформления результатов перевода, находим пункт Получите бесплатный API-ключ и щелкаем по нему (ВНИМАНИЕ! Чтобы получить ключ, у вас должен иметься профиль Яндекс).

Далее необходимо заполнить форму получения API-ключа, где надо указать от какой службы вам требуется ключ, прочитать пользовательское соглашение, поставить галочку о прочтении и нажать кнопку Получить API-ключ. Выглядит он следующим образом.

Данный ключ будет использоваться, как один из обязательных аргументов в передаваемом URL запросе к Яндекс службам. Следующий обязательный аргумент – это текст, который требуется перевести и третий аргумент – направление перевода, может задаваться как пара кодов языков (например, ru-en), либо в виде кода конечного языка (например, ru). Подробнее о синтаксисе URL запроса можете почитать на сайте Яндекс.

Таким образом, два обязательных аргумента у вас будут практически неизменными – ключ и язык перевода, а текст перевода будет переменным аргументом.

Важный момент, на который следует обратить внимание – прежде чем передавать запрос в Яндекс, необходимо изменить кодировку текста запроса, на понятный для веб службы язык. Для этого необходимо воспользоваться функцией КОДИР.URL, которая возвращает строку, зашифрованную в виде URL-адреса. К примеру, текст Самара будет выглядеть как %D0%A1%D0%B0%D0%BC%D0%B0%D1%80%D0%B0.

Добавив немного лоска нашем файлу, наш переводчик принял вполне удобочитаемый вид.

Скачать файл с переводчиком Яндекс в Excel.

Разберем варианты перевода данных в тысячи, миллионы и другие порядки в Excel для сокращения записей (например, запись вида 123 456 руб. в 123,4 тыс. руб.).

Приветствую всех, уважаемые читатели блога TutorExcel.Ru.

Проблема наглядной визуализации данных всегда остро стоит перед любым пользователем программы Excel — сегодня мы остановимся на аспектах отображения чисел с выделением размерности.
К примеру, при виде числа 123 456 789 не сразу сообразишь что это за число, а уж при виде большой таблицы с подобными числами глаза точно устанут и таблица станет не читаемой.

Проблему с округлением чисел мы можем решить 2 способами:

  • Формула. Непосредственное деление содержимого ячейки на требуемый делитель (тысяча, миллион, миллиард и т.д.);
  • Формат. Изменения отображения ячейки с помощью настройки формата ячейки.

Начнем с более очевидного и простого варианта.

Способ 1. Формула

Чтобы перевести числа в тысячи, нужно эти числа разделить на тысячу.
Достаточно очевидный факт, тем не менее именно в простоте и заключается суть применения варианта с формулами.

Возьмем таблицу с произвольными числами (продублируем данные в соседний столбец B для более понятного пояснения):

Оставим столбец A неизменным, а работать будем со столбцом B.

Запишем в любую неиспользуемую ячейку число 1 000 (или 1 000 000, в зависимости от порядка, который мы хотим показать).
Копируем данную ячейку, а затем выделяем диапазон ячеек (ячейки B2:B10), где будем менять размерность.
Воспользуемся инструментом Специальная вставка — щелкаем правой кнопкой мыши по выделенному диапазону и выбираем Специальную вставку (либо воспользуемся сочетанием клавиш Ctrl+Alt+V):

как сделать перевод в excel
В появившемся окошке в разделе Операция выбираем Разделить и щелкаем на ОК, в результате получаем (для наглядности я добавил еще 1 знак после запятой):

Минус данного способа в том, что операцией деления мы меняем содержимое ячеек, что не всегда удобно и возможно.
Теперь перейдем к рассмотрению более сложного, однако более гибкого и красивого варианта.

Способ 2. Формат ячеек

Помимо изменения самих ячеек, мы можем менять и их формат отображения.
К тому же, если перед нами стоит задача, например, перевести рубли в тысячи рублей, то мы сможем это сделать только данным способом (так как предыдущий способ меняет само число, но подпись оставляет неизменной).

Рассмотрим такую же таблицу, что и в примере выше, аналогично выделяем диапазон с данными (B2:B10), щелкаем правой кнопкой мыши и переходим в Формат Ячеек.
Во вкладке Число в разделе Числовые форматы выбираем (все форматы), в правой части окна показывается как будет отображаться ячейка, в моем случае маска отображения «# ##0».

Для того, чтобы сделать число в тысячах добавим 1 пробел в конце записи числа в маске — «# ##0 » (для миллиона 2 подряд пробела и т.д.), нажимаем ОК и получаем аналогичный результат.
Если нужно добавить в запись «тыс. руб.», то в формат маски записываем «# ##0,0 » тыс. руб.»», т.е. ставим пробел именно после записи формата числа (до добавления текстовой записи, а не после):

как сделать перевод в excel
Скачать файл с примером.

Спасибо за внимание!
Если у вас есть мысли или вопросы по теме статьи — делитесь в комментариях.

Удачи вам и до скорых встреч на страницах блога TutorExcel.Ru!

Очень часто требуется преобразовать русский текст (кириллицу) в английский (транслит), не перевести, а написать русские слова английскими буквами.

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

Мы предлагаем вам два варианта решения данной задачи.

Первый способ транслитерировать русский текст

Первый способ транслита русского текста достаточно топорный — с использованием приложения Punto Switcher от Яндекс.

Скачиваем программу Punto Switcher на официальном сайте:

Punto Switcher — программа, которая автоматически переключает раскладку клавиатуры. Она знает, что «ghbdtn» — это «привет», а «пщщв ьщктштп» — это «good morning». 

Так вот, данная программа, помимо своей основной функции можете переводить текст в транслит, менять регистр выделенного текста (сделать из «иванов» в «ИВАНОВ») и другое.

Устанавливаем программу себе на компьютер, в системном трее должен появится значок программы

Если зайти в настройки (правой кнопкой мыши по значку, выбрать настройки, горячие клавиши), то можно увидеть, что по умолчанию установлено переводить текст в транслит с помощью горячих клавиш Alt+Scroll Lock

К сожалению, в самом Excel программа транслитерировать текст не сможет, необходимо промежуточное действие. Копируем столбец с русскими буквами, открываем блокнот на компьютере (Notepad) и вставляем туда текст, далее выделяем текст в блокноте и нажимаем клавиши Alt+Scroll Lock, текст автоматически поменяется на транслит.

Далее вы просто копируете этот текст и вставляете обратно в Excel.

Это удобно если нужно например перевести в translit, например один объемный столбец данных на русском языке, но иногда преобразование текста в транслит требуется с помощью формул Excel, поэтому рассмотрим второй способ с использованием пользовательской функции Excel, написанной на VBA

Второй способ перевода русского текста в транслит в Excel с помощью пользовательской функции

Есть специальный макрос для создания пользовательской функции.

Function Translit(Txt As String) As String   Dim Rus As Variant  Rus = Array("а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", _  "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", _  "щ", "ъ", "ы", "ь", "э", "ю", "я", "А", "Б", "В", "Г", "Д", "Е", _  "Ё", "Ж", "З", "И", "Й", "К", "Л", "М", "Н", "О", "П", "Р", _  "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю", "Я")   Dim Eng As Variant  Eng = Array("a", "b", "v", "g", "d", "e", "jo", "zh", "z", "i", "j", _  "k", "l", "m", "n", "o", "p", "r", "s", "t", "u", "f", "kh", "ts", "ch", _  "sh", "sch", "''", "y", "'", "e", "yu", "ya", "A", "B", "V", "G", "D", _  "E", "JO", "ZH", "Z", "I", "J", "K", "L", "M", "N", "O", "P", "R", _  "S", "T", "U", "F", "KH", "TS", "CH", "SH", "SCH", "''", "Y", "'", "E", "YU", "YA")   For I = 1 To Len(Txt)  с = Mid(Txt, I, 1)   flag = 0  For J = 0 To 65  If Rus(J) = с Then  outchr = Eng(J)  flag = 1  Exit For  End If  Next J If flag Then outstr = outstr & outchr Else outstr = outstr & с  Next I   Translit = outstr End Function

Переключите раскладку на русский язык!! Копируем данный код, открываем среду VBA, для это нажмите правой кнопкой на активный лист и выберите пункт «Исходные данные», либо нажмите Alt+F11 далее через меню выберите новый программный модуль (Insert — Module)

и в открывшееся окно вставляете данный код и закрываете это окно.

После этого в любом месте данного листа (а при вставке кода с помощью Insert — Module — в любом месте данной книги) вы сможете использовать пользовательскую функцию, которую можно вызвать выбрав:

Вставка — Функция (Insert — Function)

в Excel 2013 Функция — Вставить функцию

Выбираем Категория: определенные пользователем, в данном списке должна появится наша функция Translit

Можно просто в нужной ячейке набрать =Transit (ссылка_на_русский_текст) 

После этого протягиваем формулу и получаем нужный нам результат.

Если вы присмотритесь в полученный результат, то увидите, что данные немного отличаются, например

Ivanov Sergej Petrovich и Ivanov Sergey Petrovich

то есть буква «й» преобразовалась по-разному, если для вас это критично, то нужно будет немного поменять указанный выше код. В коде есть две таблицы — одна на русском языке, другая латиницей. Не трудно догадаться, что вам необходимо поменять нужные вам буквы. В данном случае в коде нужно найти «j» и поменять на «y», если требуется, то по аналогии поступаем с другими буквам.

Важно!

  • Начиная с Excel 2007 не забудьте сохранить файл в формате поддержки макросов — xlsm, иначе макрос не сохранится;
  • Данный макрос необходимо вставлять в каждую отдельную книгу, в которой вы хотите, чтобы он работал;
  • Иногда требуется, чтобы была не встроенная функция, а макрос при запуске которого текст будет переводится в транслит, в этом случае нужно вставить код, указанный ниже. В итоге, для перевода текста в transit необходимо выделить нужный текст на русском языке (диапазон ячеек) и запустить макрос «Translit» и данный текст будет обработан.
  • Важно! Перед копированием данного кода, обязательно переключите раскладку клавиатуры на русский язык.
Sub Translit() Dim Txt As Variant Dim i As Integer Dim J As Integer Dim c As String Dim flag As Integer Dim outchr As String Dim outstr As String   Dim Rus As Variant  Rus = Array("а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", _  "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", _  "щ", "ъ", "ы", "ь", "э", "ю", "я", "А", "Б", "В", "Г", "Д", "Е", _  "Ё", "Ж", "З", "И", "Й", "К", "Л", "М", "Н", "О", "П", "Р", _  "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю", "Я")   Dim Eng As Variant  Eng = Array("a", "b", "v", "g", "d", "e", "jo", "zh", "z", "i", "j", _  "k", "l", "m", "n", "o", "p", "r", "s", "t", "u", "f", "kh", "ts", "ch", _  "sh", "sch", "''", "y", "'", "e", "yu", "ya", "A", "B", "V", "G", "D", _  "E", "JO", "ZH", "Z", "I", "J", "K", "L", "M", "N", "O", "P", "R", _  "S", "T", "U", "F", "KH", "TS", "CH", "SH", "SCH", "''", "Y", "'", "E", "YU", "YA")   For Each Txt In Selection.Cells  outstr = Empty  For i = 1 To Len(Txt)  с = Mid(Txt, i, 1)   flag = 0  For J = 0 To 65  If Rus(J) = с Then  outchr = Eng(J)  flag = 1  Exit For  End If  Next J  If flag Then outstr = outstr & outchr Else outstr = outstr & с  Next i  Txt.Value = outstr  Next Txt End Sub  

Итак, надеюсь вы нашли ответ на свой вопрос о том, как проще всего транслитерировать текст в Excel (преобразовать текст на русском языке в транслит).

Ставьте лайки, подписывайтесь на наши группы в социальных сетях и следите за следующими уроками.

SirExcel — безграничные возможности Excel

Перевод в Excel

Встроенные возможности Microsoft Translator

Добрый день, уважаемые читатели и подписчики. Сегодня мы поговорим о непривычном функционале Excel — переводе с одного языка на другой.

Стандартными возможностями перевода можно воспользоваться на вкладке «Рецензирование», выбрать «Перевод».

перевод в Excel

Таким образом, нужно всего лишь иметь текст, выделить его и нажать кнопку «Перевод». Предложенные варианты можно вставить рядом с исходным текстом, для этого нужно перейти в ячейку и нажать кнопку «Вставить» в панели перевода.

перевод в Excel

Все эти возможности предоставлены функцией Microsoft Translator, которая, к сожалению, не всегда отрабатывает корректно. Что делать если нужно воспользоваться более продвинутыми инструментами перевода для составления контрактов или договоров на другом языке? 

В этом случае понадобится самостоятельно подключить тот переводчик — Гугл или Яндекс. Остальные, на мой взгляд, оставляют желать лучшего на данный момент. Я воспользуюсь вторым.

Яндекс переводчик

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

После перехода останется всего лишь щёлкнуть «Создать ключ». Ключ будет создан, нужно будет ввести его описание.

перевод в Excel

Когда ключ будет создан, останется правильно оформить таблицу для перевода. В таблице должны быть:

  • список выбора языка;
  • поля для ввода текста;
  • настройки запроса.

Картина будет следующей (мы пройдёмся по всем ей составляющим).

перевод в Excel

Итак, первое — мы размещаем в ячейки О1 и О2 языки (русский, английский) и делаем с помощью них проверку данных (для создания списка выбора) в ячейке С3. Подробнее про создание выпадающих списков можно узнать здесь.

Второе — выделяем место под поля для ввода текста, который будем переводить, оформляем их границами. Делается это выделением ячеек и объединением (На вкладке «Главная» выбираем кнопку «Объединить и поместить в центре»). В ячейку H6 вставляем формулу =ФИЛЬТР.XML(C18;»//text»), она поможет извлечь из XML ответа текст перевода.

Перейдём к самому важному полю — настройки. 

В ячейку С15 поместим формулу проверки языка =ЕСЛИ(C3=»Русский»;»ru»;»en»). Это позволит нам автоматически менять язык в ячейке С15 при выборе языка из списка в ячейке С3.

Ключ, ячейка С16 — сюда нужно будет вставить ключ, полученный выше. Свой я не указываю, так как вы сможете выпустить его самостоятельно. Помните об одном — у Яндекса есть ограничения на количество символов, переводимых бесплатно. Если объёмы текста будут большие — лучше купить подписку.

Запрос, ячейка С17 — здесь мы разместим URL запрос к сервису Яндекса. Приведу его полностью.

=»https://translate.yandex.net/api/v1.5/tr/translate?key=»&C16&»&lang=»&C15&»&text=»&КОДИР.URL(B6)&»&format=html»

  • в первой части мы должны указать куда посылаем запрос (https://translate.yandex.net/api/v1.5/tr/translate?);
  • вторая часть — key=»&C16&», показывает из какой ячейки забрать api-ключ;
  • третья часть — lang=»&C15&», настраиваем направление перевода (en->ru, ru->en);
  • четвёртая честь — «&text=»&КОДИР.URL(B6)&»&format=html» указываем в какой кодировке мы забираем текст и в каком формате представлен запрос.

Ответ XML, ячейка С18 — здесь будет представлен ответ по xml запросу, который мы отправляли переводчику. Тут используется функция =ВЕБСЛУЖБА(C17), она расшифровывает запрос из ячейки С17 и переводит его в XML формат.

Вот и всё, нам остаётся только вводить текст в одно поле, а программа автоматически будет его переводить в другом. 

Для большей наглядности прикладываю файл (без ключа, его вы выпустите и вставите сами). Не обращайте внимания на ошибки #ЗНАЧ — они появляются из-за отсутствия ключа.

СКАЧАТЬ ФАЙЛ с примером.

Надеюсь, так перевод в Excel будет несколько проще.

Google Docs объединяет ряд новых функций, которые позволяют пользователям переводить языки в каждой ячейке электронной таблицы на другой язык или определять определенные языки, используемые в электронной таблице.

Изображение 1 Инструкции по переводу языков в таблицах Excel

Чтобы перевести языки в каждой ячейке электронной таблицы на другой язык, используйте следующую функцию:

= GoogleTranslate («текст», «исходный язык», «целевой язык»)

Предположим, если вы хотите перевести текст ячейки с английского языка A1 (английский) на арабский (арабский), используйте следующую функцию:

= GoogleTranslate (A1, «en», «ar»)

Если вы оставите целевой язык (в примере выше «ar») из функции, функция GoogleTranslate автоматически преобразует текст в язык по умолчанию в вашей электронной таблице.

Используйте функцию GoogleTranslate и ImportFeed

Ниже приведена анимация, описывающая, как использовать функцию Google Translate в электронной таблице (с ImportFeed) для перевода канала с другого языка на ваш язык.

В этом примере переведите с английского на французский:

Изображение 2 инструкции по переводу языков в таблицах Excel

См. Некоторые из следующих статей:

  1. Как изменить формат файла сохранения по умолчанию в Word, Excel и Powerpoint 2016?
  1. Замените косую черту на точку в формате Excel
  1. Инструкция по удалению пустых строк и столбцов в Excel 2016

Удачи!

Понравилась статья? Поделить с друзьями:
  • Язык программирования для работы с excel
  • Язык программирования для макросов excel
  • Язык программирования word basic
  • Язык программирования excel что это
  • Язык проверки правописания word