Страницы: 1
RSS
Сделать выборку из базы по позиции
 
Доброго дня Уважаемые гуру!  
 
Столкнулся с проблемой выборки из базы артикулов, цен и поставщиков по заданной позиции.  
На листе BASE расположена таблица, выбранная из базы, в строчном формате содержащая номер артикул, товар и подборка цен и поставщиков (их может быть более 10), номер позиции  
На втором листе RESULT возможность выбора поставщика и позиции, до которой он встречается.  
Например, поставщик 7 до позиции 3 встречается в базе по трём артикулам -  на третьей, второй и первой позициях.  
Нужно сделать выборку как указано в примере.  
 
Помогите пожалуйста решить задачку
 
_____________________
 
Вариация с автофильтром
 
Черновой набросок. Ошибку в незанятых ячейках можно удалить дополнительным усложнением формулы или условным форматированием.
 
Но предложенные варианты с автофильтром, я думаю, лучше - чем больше таблица, тем больше вес файла с формулами и "длиннее" пересчет.
 
{quote}{login=vikttur}{date=27.07.2010 09:58}{thema=}{post}Но предложенные варианты с автофильтром, я думаю, лучше - чем больше таблица, тем больше вес файла с формулами и "длиннее" пересчет.{/post}{/quote}  
 
Да, предложенные варианты хороши, спасибо большое!  
Но у меня база больше 10 тысяч строк и в длину до ячеек EY, получается жуткое нагромождение формул, при пересчёте все серьёзно повисает...  
Можно тут что-то придумать?
 
почитайте вот такую тему, я думаю она для вас...http://www.planetaexcel.ru/tip.php?aid=79
 
Проверьте такой вариант
 
Спасибо Вам vikttur, MCH, но эти варианты погружают эксель в долгие раздумья, да и первый вариант с черновым наброском был более наглядным, ошибку удалил, формулу усложнил... Но всё также жутко тормозит:-(  
Есть какой то способ оптимизации в этом случае?
 
{quote}{login=vadik}{date=30.07.2010 07:54}{thema=}{post}эти варианты погружают эксель в долгие раздумья, да и первый вариант с черновым наброском был более наглядным{/post}{/quote}  
Первый вариант хуже, потому что формул будет больше, и, естественно, больше объем и время пересчета.  
Формулу для последнего варианта можно немного упростить:  
=ЕЧИСЛО(ПОИСКПОЗ($C$1;D4:ИНДЕКС(D4:W4;2*$B$1);0)) - фильтрация по "ИСТИНА", или  
=ПОИСКПОЗ($C$1;D4:ИНДЕКС(D4:W4;2*$B$1);0) - фильтрация по условию "не равно "#Н/Д".  
При автофильтре может тормозить, если форматирован лишний диапазон столбцов или строк. Проверить - при сдвигании ползунка вертикальной или горизонтальной прокрутки до конца вниз (вправо) лист пролистывается значительно дальше ячеек с данными. Лечить - выделить лишние строки (столбцы), удалить и сохранить документ.
Страницы: 1
Читают тему
Наверх