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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос поиска и переноса. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос поиска и переноса. (Макросы Sub)
Макрос поиска и переноса.
MikhailMM Дата: Вторник, 24.09.2013, 21:10 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
В общем проблема такая: Есть база данных на очень большое кол-во комплектующих "Список №2". И есть новая база данных "Список №1"
Проблема в чем: необходимо сравнить данные в столбце В таблица №1, с данными в таблице №2 в столбцах E - J при совпадении необходимо
из поля "материал" (таблица №1) перенести значение в поле D на ту строку в которой было совпадение.
ПРИМЕР:
В таблице№1 в столбце В берем " VALVE BUSCHJOST 8296300.8173.02400 " и находим в таблице №2 - есть совпадение в строке 9 ( J9 )
после этого переносим значение "00080600220" (из поля " Материал" таблица №1) в таблицу №2 в поле D9

Как можно выполнить данную работу.
В таблице №1 --- 2500 материалов
В таблице №2 ---- ок. 5000 позиций.
К сообщению приложен файл: 9666002.xlsx (12.5 Kb) · 8623363.xlsx (79.0 Kb)


Сообщение отредактировал MikhailMM - Вторник, 24.09.2013, 21:11
 
Ответить
СообщениеВ общем проблема такая: Есть база данных на очень большое кол-во комплектующих "Список №2". И есть новая база данных "Список №1"
Проблема в чем: необходимо сравнить данные в столбце В таблица №1, с данными в таблице №2 в столбцах E - J при совпадении необходимо
из поля "материал" (таблица №1) перенести значение в поле D на ту строку в которой было совпадение.
ПРИМЕР:
В таблице№1 в столбце В берем " VALVE BUSCHJOST 8296300.8173.02400 " и находим в таблице №2 - есть совпадение в строке 9 ( J9 )
после этого переносим значение "00080600220" (из поля " Материал" таблица №1) в таблицу №2 в поле D9

Как можно выполнить данную работу.
В таблице №1 --- 2500 материалов
В таблице №2 ---- ок. 5000 позиций.

Автор - MikhailMM
Дата добавления - 24.09.2013 в 21:10
_Boroda_ Дата: Вторник, 24.09.2013, 21:56 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Сделал формулой. Она хоть и страшная, но должна быть довольно быстрой. Можно было сделать намного короче, но формулой массива - тогда она бы долго думала.
Да, для удобства перенес все в один файл на два разных листа.
Код
=ИНДЕКС('2'!A$2:A$26;ЕСЛИОШИБКА(ПОИСКПОЗ(E5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(F5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(G5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(H5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(I5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(J5;'2'!B$2:B$25;);25)))))))

Обратите внимание на формат столбца D и на то, что в ИНДЕКСе последняя цифра не 25, как в ПОИСКПОЗах, а 26. Т.о. мы захватываем лишнюю пустую ячейку, которая выводится как 0 в том случае, когда мы ничего не находим. А сам этот ноль скрывается с помощью формата ячейки.
К сообщению приложен файл: 8623363_1.xlsx (89.0 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеСделал формулой. Она хоть и страшная, но должна быть довольно быстрой. Можно было сделать намного короче, но формулой массива - тогда она бы долго думала.
Да, для удобства перенес все в один файл на два разных листа.
Код
=ИНДЕКС('2'!A$2:A$26;ЕСЛИОШИБКА(ПОИСКПОЗ(E5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(F5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(G5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(H5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(I5;'2'!B$2:B$25;);ЕСЛИОШИБКА(ПОИСКПОЗ(J5;'2'!B$2:B$25;);25)))))))

Обратите внимание на формат столбца D и на то, что в ИНДЕКСе последняя цифра не 25, как в ПОИСКПОЗах, а 26. Т.о. мы захватываем лишнюю пустую ячейку, которая выводится как 0 в том случае, когда мы ничего не находим. А сам этот ноль скрывается с помощью формата ячейки.

Автор - _Boroda_
Дата добавления - 24.09.2013 в 21:56
MikhailMM Дата: Среда, 25.09.2013, 00:12 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Большое спасибо за быстрый ответ вы мне очень помогли. :D
 
Ответить
СообщениеБольшое спасибо за быстрый ответ вы мне очень помогли. :D

Автор - MikhailMM
Дата добавления - 25.09.2013 в 00:12
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос поиска и переноса. (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

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