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

Вход

Регистрация

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

 

= Мир MS Excel/Вынести в отдельную ячейку информацию согласно списку - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Вынести в отдельную ячейку информацию согласно списку (Формулы/Formulas)
Вынести в отдельную ячейку информацию согласно списку
Leeloo Дата: Вторник, 25.08.2015, 22:50 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Имеется текст в ячейке, нужно его сократить оставив отдельные слова по списку
Дерево
Хрусталь
Ротанг
Металл
Стекло
Ткань
Керамика
Акрил
Если в ячейке содержаться несколько слов из списка они пишутся через - ;
Например - 1 ячейка Металл , 2 ячейка Металл; Стекло
Спасибо!
К сообщению приложен файл: 9713761.xlsx (8.7 Kb)
 
Ответить
СообщениеИмеется текст в ячейке, нужно его сократить оставив отдельные слова по списку
Дерево
Хрусталь
Ротанг
Металл
Стекло
Ткань
Керамика
Акрил
Если в ячейке содержаться несколько слов из списка они пишутся через - ;
Например - 1 ячейка Металл , 2 ячейка Металл; Стекло
Спасибо!

Автор - Leeloo
Дата добавления - 25.08.2015 в 22:50
Michael_S Дата: Среда, 26.08.2015, 00:33 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Leeloo, :
-а че список в пример не внесли?
-Стекло и стекла - одно слово?
-Металл и металлический?
-показали б пример, что должно получиться...
 
Ответить
СообщениеLeeloo, :
-а че список в пример не внесли?
-Стекло и стекла - одно слово?
-Металл и металлический?
-показали б пример, что должно получиться...

Автор - Michael_S
Дата добавления - 26.08.2015 в 00:33
Leeloo Дата: Среда, 26.08.2015, 00:36 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Michael_S, А куда его внести?
да одно слово
[moder]Не нужно цитировать весь пост. Удалил.
Прочитайте Правила форума, там об этом русским по желтенькому написано.


Сообщение отредактировал _Boroda_ - Среда, 26.08.2015, 01:24
 
Ответить
СообщениеMichael_S, А куда его внести?
да одно слово
[moder]Не нужно цитировать весь пост. Удалил.
Прочитайте Правила форума, там об этом русским по желтенькому написано.

Автор - Leeloo
Дата добавления - 26.08.2015 в 00:36
Michael_S Дата: Среда, 26.08.2015, 01:03 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Вообще-то надо делать ЮДФ или макрос...
Так, тренировки ради, сделал формулой... но если отдельных слов много, формлуой тяжко...
К сообщению приложен файл: Leeloo.xlsx (10.4 Kb)
 
Ответить
СообщениеВообще-то надо делать ЮДФ или макрос...
Так, тренировки ради, сделал формулой... но если отдельных слов много, формлуой тяжко...

Автор - Michael_S
Дата добавления - 26.08.2015 в 01:03
KSV Дата: Среда, 26.08.2015, 01:07 | Сообщение № 5
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
если не заморачиваться, то можно, например, так (UDF) [vba]
Код
Function KeyWords(ByVal CheckText As String, KeyWordsList As Range) As String
     If Len(Trim$(CheckText)) = 0 Then Exit Function
     CheckText = " " & CheckText
     Dim i&, v(): v = KeyWordsList.Value
     For i = 1 To UBound(v)
         If InStr(1, CheckText, " " & v(i, 1), vbTextCompare) Then KeyWords = KeyWords & "; " & v(i, 2)
     Next
     If Len(KeyWords) Then KeyWords = Mid$(KeyWords, 3)
End Function
[/vba]
К сообщению приложен файл: 9713761.xlsm (16.6 Kb)


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщениеесли не заморачиваться, то можно, например, так (UDF) [vba]
Код
Function KeyWords(ByVal CheckText As String, KeyWordsList As Range) As String
     If Len(Trim$(CheckText)) = 0 Then Exit Function
     CheckText = " " & CheckText
     Dim i&, v(): v = KeyWordsList.Value
     For i = 1 To UBound(v)
         If InStr(1, CheckText, " " & v(i, 1), vbTextCompare) Then KeyWords = KeyWords & "; " & v(i, 2)
     Next
     If Len(KeyWords) Then KeyWords = Mid$(KeyWords, 3)
End Function
[/vba]

Автор - KSV
Дата добавления - 26.08.2015 в 01:07
Leeloo Дата: Среда, 26.08.2015, 11:23 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Michael_S,
Так, тренировки ради, сделал формулой... но если отдельных слов много, формлуой тяжко...

Michael_S, Супер! Вы мой спаситель!!!
 
Ответить
СообщениеMichael_S,
Так, тренировки ради, сделал формулой... но если отдельных слов много, формлуой тяжко...

Michael_S, Супер! Вы мой спаситель!!!

Автор - Leeloo
Дата добавления - 26.08.2015 в 11:23
Michael_S Дата: Среда, 26.08.2015, 12:34 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Тогда уж лучше такую формулу:
Код
=ЗАМЕНИТЬ(ЕСЛИ(СЧЁТЕСЛИ(A1;$E$1);"; "&$D$1;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$2);"; "&$D$2;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$3);"; "&$D$3;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$4);"; "&$D$4;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$5);"; "&$D$5;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$6);"; "&$D$6;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$7);"; "&$D$7;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$8);"; "&$D$8;"");1;2;"")
(не массивная)
К сообщению приложен файл: Leeloo-1-.xlsx (10.3 Kb)
 
Ответить
СообщениеТогда уж лучше такую формулу:
Код
=ЗАМЕНИТЬ(ЕСЛИ(СЧЁТЕСЛИ(A1;$E$1);"; "&$D$1;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$2);"; "&$D$2;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$3);"; "&$D$3;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$4);"; "&$D$4;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$5);"; "&$D$5;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$6);"; "&$D$6;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$7);"; "&$D$7;"")&ЕСЛИ(СЧЁТЕСЛИ(A1;$E$8);"; "&$D$8;"");1;2;"")
(не массивная)

Автор - Michael_S
Дата добавления - 26.08.2015 в 12:34
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Вынести в отдельную ячейку информацию согласно списку (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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