#7558: Клетчато-сетчатая разработка

16:45 19.10.2011, IT happens


Лень, говорите, двигатель прогресса? Я ощутил это на собственном опыте.


Работаю логистом — привозим товары из далёкой Японии. Менеджер прислал список товаров, которые собирается заказать у производителя, с просьбой просчитать таможенные расходы. Всё бы ничего, но у него в экселевском списке две колонки: каталожный номер и закупочная цена. А для просчёта таможни нужны данные о весе, объёме и т. п.


На просьбу дать дополнительные данные менеджер выслал прайс производителя, в котором около пяти тысяч позиций, в перечне же порядка полутора тысяч строк. Прислать-то прислал, но сразу же свалил в отпуск — а дальше как знаете…


Что делать прикажете? Вручную искать позиции и копировать данные? Это ж дня три уйдёт! Берём Эксель, копируем на один лист полный прайс и перечень, оставив место под необходимые столбцы. А дальше логика такая:


1. Найти строку из массива с совпадающим каталожным номером.

2. Определить ячейку.

3. Составить в текстовом виде адрес ячейки с необходимым параметром.

4. Получить ссылку на ячейку.

5. Получить содержимое ячейки.


Эксель — чем не среда разработки?


Всё получилось замечательно. Только формулы я скрыл при отправке на просчёт декларанту, дабы не пугать. Не всякий спокойно воспримет следующее:


=CELL("CONTENTS";INDIRECT(ADDRESS((MATCH(B11;I11:I856)+ROW(I11:I856)-1);12)))



Загрузка...