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

Вход

Регистрация

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

 

= Мир MS Excel/Перебор значений из словаря/диапазона ячеек - Мир MS Excel

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

Excel 2010
Товарищи, помогите сообразить.

Надо чтобы функция (в колонке S) брала значение из словаря или диапазона ячеек (в моем случае столбец T) и подставляла в столбец c наименованием (столбец B).
Если значение совпадало, то оно бы записывалось в эту ячейку, если нет, то подставлялось бы следующее значение из словаря (диапазона ячеек).

С VBA вообще не знаком, пытаюсь сделать силами базовых формул, но не могу сообразить как сделать цикл.
Реально ли такое вообще сделать без VBA?
К сообщению приложен файл: test.xlsx (18.4 Kb) · 3920019.png (87.6 Kb)


Сообщение отредактировал Dartray - Понедельник, 30.01.2017, 17:57
 
Ответить
СообщениеТоварищи, помогите сообразить.

Надо чтобы функция (в колонке S) брала значение из словаря или диапазона ячеек (в моем случае столбец T) и подставляла в столбец c наименованием (столбец B).
Если значение совпадало, то оно бы записывалось в эту ячейку, если нет, то подставлялось бы следующее значение из словаря (диапазона ячеек).

С VBA вообще не знаком, пытаюсь сделать силами базовых формул, но не могу сообразить как сделать цикл.
Реально ли такое вообще сделать без VBA?

Автор - Dartray
Дата добавления - 30.01.2017 в 17:57
Pelena Дата: Понедельник, 30.01.2017, 18:09 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19197
Репутация: 4423 ±
Замечаний: ±

Excel 365 & Mac Excel
Как вариант
Код
=ПРОПИСН(ЕСЛИОШИБКА(ПРОСМОТР(;-1/ПОИСК($T$6:$T$54;B6);$T$6:$T$54);""))
К сообщению приложен файл: test-5-.xlsx (18.0 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеКак вариант
Код
=ПРОПИСН(ЕСЛИОШИБКА(ПРОСМОТР(;-1/ПОИСК($T$6:$T$54;B6);$T$6:$T$54);""))

Автор - Pelena
Дата добавления - 30.01.2017 в 18:09
Dartray Дата: Среда, 08.02.2017, 23:44 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Спасибо сердечное вам за ответ!

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

Например, хотим найти Traster.
А в словаре имеем AST и Traster.
В итоге запишется AST, т.к. он идёт в начале словаря.
 
Ответить
СообщениеСпасибо сердечное вам за ответ!

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

Например, хотим найти Traster.
А в словаре имеем AST и Traster.
В итоге запишется AST, т.к. он идёт в начале словаря.

Автор - Dartray
Дата добавления - 08.02.2017 в 23:44
AlexM Дата: Четверг, 09.02.2017, 00:01 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4512
Репутация: 1128 ±
Замечаний: 0% ±

Excel 2003
Показали бы пример не корректной работы формулы.
А так приходится гадать?
Код
=ПРОПИСН(ЕСЛИОШИБКА(ПРОСМОТР(;-1/ПОИСК(" "&$T$6:$T$54&" ";" "&B6&" ");$T$6:$T$54);""))



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.


Сообщение отредактировал AlexM - Четверг, 09.02.2017, 00:03
 
Ответить
СообщениеПоказали бы пример не корректной работы формулы.
А так приходится гадать?
Код
=ПРОПИСН(ЕСЛИОШИБКА(ПРОСМОТР(;-1/ПОИСК(" "&$T$6:$T$54&" ";" "&B6&" ");$T$6:$T$54);""))

Автор - AlexM
Дата добавления - 09.02.2017 в 00:01
gling Дата: Четверг, 09.02.2017, 00:01 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2525
Репутация: 678 ±
Замечаний: 0% ±

2010
Попробуйте добавить пробелы, чтобы не искать внутри слова.
Код
=ПРОПИСН(ЕСЛИОШИБКА(ПРОСМОТР(;-1/ПОИСК(" "&$T$6:$T$54&" ";" "&B6&" ");$T$6:$T$54);""))


ЯД-41001506838083
 
Ответить
СообщениеПопробуйте добавить пробелы, чтобы не искать внутри слова.
Код
=ПРОПИСН(ЕСЛИОШИБКА(ПРОСМОТР(;-1/ПОИСК(" "&$T$6:$T$54&" ";" "&B6&" ");$T$6:$T$54);""))

Автор - gling
Дата добавления - 09.02.2017 в 00:01
Hugo Дата: Четверг, 09.02.2017, 00:04 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
Например, хотим найти Traster.
А в словаре имеем AST и Traster.
В итоге запишется AST, т.к. он идёт в начале словаря.

Не получилось так, всё корректно.


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
Сообщение
Например, хотим найти Traster.
А в словаре имеем AST и Traster.
В итоге запишется AST, т.к. он идёт в начале словаря.

Не получилось так, всё корректно.

Автор - Hugo
Дата добавления - 09.02.2017 в 00:04
Dartray Дата: Суббота, 11.02.2017, 21:26 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Варианты с пробелами не рабочие. Предполагаю, что формула хватает первый пробел из первой строчки словаря, где БРЕНД состоит из двух слов (т.е. пробел посередине).

Hugo,
Ничего подобного.
Вот вам пример:
https://yadi.sk/d/V9cwB84i3DtKiK

позиции 102-106.
Причем, происходит какая-то чертовщина.
Если таблицу сократить до этих ячеек, значения исправляются на корректные.


Сообщение отредактировал Dartray - Суббота, 11.02.2017, 23:20
 
Ответить
СообщениеВарианты с пробелами не рабочие. Предполагаю, что формула хватает первый пробел из первой строчки словаря, где БРЕНД состоит из двух слов (т.е. пробел посередине).

Hugo,
Ничего подобного.
Вот вам пример:
https://yadi.sk/d/V9cwB84i3DtKiK

позиции 102-106.
Причем, происходит какая-то чертовщина.
Если таблицу сократить до этих ячеек, значения исправляются на корректные.

Автор - Dartray
Дата добавления - 11.02.2017 в 21:26
AlexM Дата: Суббота, 11.02.2017, 23:04 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4512
Репутация: 1128 ±
Замечаний: 0% ±

Excel 2003
Формула с пробелами в 102 - 106 строке определяет правильно.
Словарь 3556 строк, а в формулах введено всего 900. При вводе всего массива формула перестает работать.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеФормула с пробелами в 102 - 106 строке определяет правильно.
Словарь 3556 строк, а в формулах введено всего 900. При вводе всего массива формула перестает работать.

Автор - AlexM
Дата добавления - 11.02.2017 в 23:04
Фомулист Дата: Суббота, 11.02.2017, 23:07 | Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 397
Репутация: 9 ±
Замечаний: 80% ±

Excel 2003
Dartray, сократитье Ваш файл, удалив ненужное, и выложите сюда. А ссылку удалите. - иначе нарушение правил форума.


Терпение и труд всё перетрут!
 
Ответить
СообщениеDartray, сократитье Ваш файл, удалив ненужное, и выложите сюда. А ссылку удалите. - иначе нарушение правил форума.

Автор - Фомулист
Дата добавления - 11.02.2017 в 23:07
Dartray Дата: Суббота, 11.02.2017, 23:43 | Сообщение № 10
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
AlexM, словарь заканчивается на 934 сроке, но я понял что вы имели ввиду. Спасибо, вроде работает. Благодарю.

Фомулист, очень хотел таки и сделать, но была необходимость выложить всю таблицу
Цитата
Если таблицу сократить до этих ячеек, значения исправляются на корректные.
 
Ответить
СообщениеAlexM, словарь заканчивается на 934 сроке, но я понял что вы имели ввиду. Спасибо, вроде работает. Благодарю.

Фомулист, очень хотел таки и сделать, но была необходимость выложить всю таблицу
Цитата
Если таблицу сократить до этих ячеек, значения исправляются на корректные.

Автор - Dartray
Дата добавления - 11.02.2017 в 23:43
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Перебор значений из словаря/диапазона ячеек (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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