Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2009, 00:13   #1
vv66
Пользователь
 
Регистрация: 29.08.2009
Сообщений: 22
По умолчанию Поиск позиции комбинации

Всем здравствуйте!
Весь вопрос в заголовке и примере.
Вопрос, может быть, простой, но сам не справился.
Пробовал поиграться массивами, но практики с ними никакой...
Помогите, пожалуйста.
С ув. vv66.
Вложения
Тип файла: rar Книга.rar (2.1 Кб, 24 просмотров)
С уважением, Владимир.
vv66 вне форума Ответить с цитированием
Старый 01.11.2009, 00:41   #2
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте vv66.
"поиграться массивами..."
Евгений.
Вложения
Тип файла: zip Книга.zip (2.3 Кб, 22 просмотров)
Teslenko_EA вне форума Ответить с цитированием
Старый 01.11.2009, 00:49   #3
vv66
Пользователь
 
Регистрация: 29.08.2009
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Teslenko_EA Посмотреть сообщение
Здравствуйте vv66.
"поиграться массивами..."
Евгений.
Да уж, век - живи, век - учись...
"А ларец то открывался просто".
Спасибо, Евгений, огромное!
Благодаря Вам усвоил урок по массивам, спасибо!
С ув. vv66.
С уважением, Владимир.
vv66 вне форума Ответить с цитированием
Старый 01.11.2009, 01:16   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

я чуть данные поправил. на первое совпадение указывает формула. все совпадения - подсвечены
Вложения
Тип файла: rar Книга191.rar (6.3 Кб, 34 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 01.11.2009, 19:13   #5
vv66
Пользователь
 
Регистрация: 29.08.2009
Сообщений: 22
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
я чуть данные поправил. на первое совпадение указывает формула. все совпадения - подсвечены
IgorGO, большое спасибо, как раз кстати подсветка, поможет в работе.
С ув. vv66.
С уважением, Владимир.
vv66 вне форума Ответить с цитированием
Старый 01.11.2009, 19:22   #6
vv66
Пользователь
 
Регистрация: 29.08.2009
Сообщений: 22
Вопрос

IgorGO, прошу прощения.
Только что обнаружил неточность работы формулы.
Если ввести комбинацию чисел 3:5 и 4:5 в Вашем примере, формула выдает несуществующею позицию. Также ведет себя формула ув. Teslenko_EA.
Как быть!
С ув. vv66.
С уважением, Владимир.
vv66 вне форума Ответить с цитированием
Старый 01.11.2009, 19:49   #7
Igor67
Пользователь
 
Регистрация: 09.12.2008
Сообщений: 56
По умолчанию

Попробуйте добавить 0 в формулу
ПОИСКПОЗ(СЦЕПИТЬ(D1;E1);СЦЕПИТЬ(A1: A27;B1:B27);0)
тогда будет искаться точное совпадение, при отсутствии данных - будет значение ошибки
Убираем
ОФ2007
=ЕСЛИОШИБКА(ПОИСКПОЗ(СЦЕПИТЬ(D1;E1) ;СЦЕПИТЬ(A1:A27;B1:B27);0);"такой комбинации нет")
ОФ2003
через если
если(еошибка(ПОИСКПОЗ(СЦЕПИТЬ(D1;E1 );СЦЕПИТЬ(A1:A27;B1:B27);0));"такой комбинации нет";ПОИСКПОЗ(СЦЕПИТЬ(D1;E1);СЦЕПИТ Ь(A1:A27;B1:B27);0))
Это формула массива, вводится с одновременным нажатием клавиш
Ctrl+Shift+Enter
обычно я на http://planetaexcel.ru/forum.php
Igor67 вне форума Ответить с цитированием
Старый 01.11.2009, 20:24   #8
vv66
Пользователь
 
Регистрация: 29.08.2009
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Igor67 Посмотреть сообщение
если(еошибка(ПОИСКПОЗ(СЦЕПИТЬ(D1;E1 );СЦЕПИТЬ(A1:A27;B1:B27);0));"такой комбинации нет";ПОИСКПОЗ(СЦЕПИТЬ(D1;E1);СЦЕПИТ Ь(A1:A27;B1:B27);0))
Спасибо, Igor67.
Применил формулу к своему файлу, все работает как и задумано.
Большое Вам спасибо.
Возник еще один вопрос: возможно ли с помощью усл. форматирования выделить цветом не только найденные ячейки, а всю строку в которой они находятся (без макроса)?
С ув. vv66.
С уважением, Владимир.
vv66 вне форума Ответить с цитированием
Старый 02.11.2009, 02:08   #9
DV68
Форумчанин
 
Регистрация: 05.08.2009
Сообщений: 465
По умолчанию

Еще вариант поиска:
=СУММПРОИЗВ(--(A3:A27=D1)*(B3:B27=E1)*СТРОКА(A3:B 27))
=СУММПРОИЗВ(--(A3:A27&B3:B27=D1&E1)*СТРОКА(A3:B27 ))

А по вопросу выделения строки, IgorGO уже все сделал, осталось только расширить диапазон условн. форматирования, к которому применяется это условие.
"Все следует делать настолько простым, насколько это возможно, но не проще." Альберт Эйнштейн
DV68 вне форума Ответить с цитированием
Старый 02.11.2009, 23:15   #10
vv66
Пользователь
 
Регистрация: 29.08.2009
Сообщений: 22
Вопрос

Цитата:
Сообщение от DV68 Посмотреть сообщение
Еще вариант поиска:
=СУММПРОИЗВ(--(A3:A27=D1)*(B3:B27=E1)*СТРОКА(A3:B 27))
=СУММПРОИЗВ(--(A3:A27&B3:B27=D1&E1)*СТРОКА(A3:B27 ))

А по вопросу выделения строки, IgorGO уже все сделал, осталось только расширить диапазон условн. форматирования, к которому применяется это условие.
Всем, здравствуйте!
DV68, спасибо за формулы, возьму в коллекцию.
С условным форматированием разобрался, спасибо.
Поэкспериментировал с формулами массива: да хороши они, расширяют возможности обычных формул, но когда их целая таблица - пересчет занимает много времени. По сравнению - обычная формула, более тяжелая с виду, работает более шустрее. В данном примере я обходился без массивов - поиск вел по опр. диапазонам, но диапазоны временами меняются, поэтому обратился к массивам.
Вопрос: подскажите вариант без фор. массивов, но и без разбивки диапазона поиска на поддиапазоны.
Заранее спасибо!
С ув. vv66.
С уважением, Владимир.
vv66 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
аглоритм поиска оптимальной комбинации Gus Hidding Microsoft Office Excel 1 27.07.2009 01:06
Нажатие комбинации клавиш pix_l Общие вопросы Delphi 7 31.03.2009 10:12
Найти комбинации zzzzz Помощь студентам 3 29.09.2008 19:44
Поиск позиции элемента несортированного массива gdneon Microsoft Office Excel 4 16.04.2007 08:08