Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Использование словаря для замены русских слов - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Использование словаря для замены русских слов
ВасилисаЛукьянчикова Дата: Понедельник, 14.01.2019, 08:12 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 64
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Доброе утро.

Ищу способ переводить русские названия объектов экселя на английский язык - по словарю.
Словарь находится в таблице K2:L6.

Если в зеленую ячейку G2 ввести слово "Прямоугольник 5" - то формула тут же выдаст перевод этого слова - в ячейку G3, в виде текста "Rectangle 5".

Как формулой сделать подобную замену по словарю ?
К сообщению приложен файл: 9532971.xls (34.5 Kb)
 
Ответить
СообщениеДоброе утро.

Ищу способ переводить русские названия объектов экселя на английский язык - по словарю.
Словарь находится в таблице K2:L6.

Если в зеленую ячейку G2 ввести слово "Прямоугольник 5" - то формула тут же выдаст перевод этого слова - в ячейку G3, в виде текста "Rectangle 5".

Как формулой сделать подобную замену по словарю ?

Автор - ВасилисаЛукьянчикова
Дата добавления - 14.01.2019 в 08:12
китин Дата: Понедельник, 14.01.2019, 08:41 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 7034
Репутация: 1079 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Доброе утро!
Чисто по приведенному примеру. если между словом и цифрой будет что либо иное вместо одного пробела работать не будет
Код
=ВПР(ПСТР($G$2;1;ПОИСК(" ";$G$2)-1);$K$2:$L$6;2;0)&ПСТР($G$2;ПОИСК(" ";$G$2);ДЛСТР($G$2))
К сообщению приложен файл: 0431471.xlsx (11.6 Kb)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеДоброе утро!
Чисто по приведенному примеру. если между словом и цифрой будет что либо иное вместо одного пробела работать не будет
Код
=ВПР(ПСТР($G$2;1;ПОИСК(" ";$G$2)-1);$K$2:$L$6;2;0)&ПСТР($G$2;ПОИСК(" ";$G$2);ДЛСТР($G$2))

Автор - китин
Дата добавления - 14.01.2019 в 08:41
ВасилисаЛукьянчикова Дата: Понедельник, 14.01.2019, 09:15 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 64
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
китин, что-то не работает.

Сейчас добавила туда текст "Стрелка вверх" с переводом "Up Arrow" - выдает ошибку "#Н/Д"
К сообщению приложен файл: 0310279.xls (41.0 Kb)
 
Ответить
Сообщениекитин, что-то не работает.

Сейчас добавила туда текст "Стрелка вверх" с переводом "Up Arrow" - выдает ошибку "#Н/Д"

Автор - ВасилисаЛукьянчикова
Дата добавления - 14.01.2019 в 09:15
sboy Дата: Понедельник, 14.01.2019, 09:26 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Тогда такой вариант
Код
=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99))
К сообщению приложен файл: 9231408.xls (32.5 Kb)


Яндекс: 410016850021169
 
Ответить
СообщениеДобрый день.
Тогда такой вариант
Код
=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99))

Автор - sboy
Дата добавления - 14.01.2019 в 09:26
ВасилисаЛукьянчикова Дата: Понедельник, 14.01.2019, 09:30 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 64
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
sboy, теперь работает.
Всем большое спасибо за ответы.
 
Ответить
Сообщениеsboy, теперь работает.
Всем большое спасибо за ответы.

Автор - ВасилисаЛукьянчикова
Дата добавления - 14.01.2019 в 09:30
ВасилисаЛукьянчикова Дата: Понедельник, 14.01.2019, 09:41 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 64
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
И еще такой уточняющий вопрос:

Как изменить вот эту формулу, чтобы если попадается слово - не представленное в словаре - чтобы его формула оставляла таким какое оно есть (то есть добавляла бы это слово без перевода) ?
Потому что сейчас - если встречается незнакомое слово - то формула ошибку выдает.
Код
=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99))
 
Ответить
СообщениеИ еще такой уточняющий вопрос:

Как изменить вот эту формулу, чтобы если попадается слово - не представленное в словаре - чтобы его формула оставляла таким какое оно есть (то есть добавляла бы это слово без перевода) ?
Потому что сейчас - если встречается незнакомое слово - то формула ошибку выдает.
Код
=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99))

Автор - ВасилисаЛукьянчикова
Дата добавления - 14.01.2019 в 09:41
Светлый Дата: Понедельник, 14.01.2019, 10:53 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1868
Репутация: 536 ±
Замечаний: 0% ±

Excel 2013, 2016
И моя формула:
Код
=ЕСЛИОШИБКА(ПОДСТАВИТЬ(G2;ЛЕВБ(G2;ПОИСК(" ";G2)-1);ВПР(ЛЕВБ(G2;ПОИСК(" ";G2)-1);K2:L6;2;));G2)
*Или такая массивная формула в любом месте заменяет слово:
Код
=ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K6;G2));СТРОКА(2:6))));ИНДЕКС(L:L;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K6;G2));СТРОКА(2:6)))))
**А такая может даже два слова перевести (формулу заменил):
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2)));ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1)))


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Понедельник, 14.01.2019, 11:37
 
Ответить
СообщениеИ моя формула:
Код
=ЕСЛИОШИБКА(ПОДСТАВИТЬ(G2;ЛЕВБ(G2;ПОИСК(" ";G2)-1);ВПР(ЛЕВБ(G2;ПОИСК(" ";G2)-1);K2:L6;2;));G2)
*Или такая массивная формула в любом месте заменяет слово:
Код
=ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K6;G2));СТРОКА(2:6))));ИНДЕКС(L:L;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K6;G2));СТРОКА(2:6)))))
**А такая может даже два слова перевести (формулу заменил):
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2)));ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1)))

Автор - Светлый
Дата добавления - 14.01.2019 в 10:53
ВасилисаЛукьянчикова Дата: Понедельник, 14.01.2019, 11:33 | Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 64
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Светлый, пытаюсь вашими формулами перевести слово "Прямая со стрелкой 2" (в переводе - "Straight Arrow Connector 2").
Не работают - выдают 0 либо не переводят.

Вот эта формула - работала.
Код
=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99))

Но она не выдает слово без перевода (если в словаре такое слово отсутствует).

Вопрос касается - того, как изменить эту формулу - чтобы она оставляла слово как есть - если это слово (или словосочетание) отсутствует в словаре ?
К сообщению приложен файл: 1663357.xls (40.5 Kb)
 
Ответить
СообщениеСветлый, пытаюсь вашими формулами перевести слово "Прямая со стрелкой 2" (в переводе - "Straight Arrow Connector 2").
Не работают - выдают 0 либо не переводят.

Вот эта формула - работала.
Код
=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99))

Но она не выдает слово без перевода (если в словаре такое слово отсутствует).

Вопрос касается - того, как изменить эту формулу - чтобы она оставляла слово как есть - если это слово (или словосочетание) отсутствует в словаре ?

Автор - ВасилисаЛукьянчикова
Дата добавления - 14.01.2019 в 11:33
sboy Дата: Понедельник, 14.01.2019, 11:44 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Цитата ВасилисаЛукьянчикова, 14.01.2019 в 11:33, в сообщении № 8 ()
если в словаре такое слово отсутствует

Код
=ЕСЛИОШИБКА(ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99));G2)


Яндекс: 410016850021169
 
Ответить
Сообщение
Цитата ВасилисаЛукьянчикова, 14.01.2019 в 11:33, в сообщении № 8 ()
если в словаре такое слово отсутствует

Код
=ЕСЛИОШИБКА(ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$6;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99));G2)

Автор - sboy
Дата добавления - 14.01.2019 в 11:44
ВасилисаЛукьянчикова Дата: Понедельник, 14.01.2019, 11:57 | Сообщение № 10
Группа: Пользователи
Ранг: Участник
Сообщений: 64
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
sboy, большое спасибо.
Теперь все работает хорошо.
 
Ответить
Сообщениеsboy, большое спасибо.
Теперь все работает хорошо.

Автор - ВасилисаЛукьянчикова
Дата добавления - 14.01.2019 в 11:57
Светлый Дата: Понедельник, 14.01.2019, 12:02 | Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 1868
Репутация: 536 ±
Замечаний: 0% ±

Excel 2013, 2016
Можно исправить так:
Код
=ЕСЛИОШИБКА(ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$14;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99));G2)
, но будет работать в офисе 2007 и выше.
А моя массивная работает, но надо, чтобы в конце диапазона словаря били пустые ячейки (два слова переводит):
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2)));ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1)))
Или одно:
Код
=ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9))));ИНДЕКС(L:L;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9)))))
К сообщению приложен файл: 1663357-1.xls (39.5 Kb)


Программировать проще, чем писать стихи.
 
Ответить
СообщениеМожно исправить так:
Код
=ЕСЛИОШИБКА(ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));ДЛСТР(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99)))-99));$K$2:$L$14;2;)&" "&СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(G2;" ";ПОВТОР(" ";99));99));G2)
, но будет работать в офисе 2007 и выше.
А моя массивная работает, но надо, чтобы в конце диапазона словаря били пустые ячейки (два слова переводит):
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));2)));ИНДЕКС(K:K;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1));ИНДЕКС(L:L;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9));1)))
Или одно:
Код
=ПОДСТАВИТЬ(G2;ИНДЕКС(K:K;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9))));ИНДЕКС(L:L;МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(K2:K9;G2));СТРОКА(2:9)))))

Автор - Светлый
Дата добавления - 14.01.2019 в 12:02
Светлый Дата: Понедельник, 14.01.2019, 20:19 | Сообщение № 12
Группа: Друзья
Ранг: Старожил
Сообщений: 1868
Репутация: 536 ±
Замечаний: 0% ±

Excel 2013, 2016
Родился ещё один вариант массивной формулы:
Код
=ПОДСТАВИТЬ(G3;ПРОСМОТР("я";ЕСЛИ(ПОИСК(K2:K99;G3);K2:K99));ПРОСМОТР("я";ЕСЛИ(ПОИСК(K2:K99;G3);L2:L99)))
Но для его правильной работы при отсутствии слова в таблице перевода самой первой строкой должно быть по пробелу.
К сообщению приложен файл: 1663357-2.xls (41.0 Kb)


Программировать проще, чем писать стихи.
 
Ответить
СообщениеРодился ещё один вариант массивной формулы:
Код
=ПОДСТАВИТЬ(G3;ПРОСМОТР("я";ЕСЛИ(ПОИСК(K2:K99;G3);K2:K99));ПРОСМОТР("я";ЕСЛИ(ПОИСК(K2:K99;G3);L2:L99)))
Но для его правильной работы при отсутствии слова в таблице перевода самой первой строкой должно быть по пробелу.

Автор - Светлый
Дата добавления - 14.01.2019 в 20:19
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!