Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Сравнение двух листов (макрос)
 
Добрый вечер. Помогите пожалуйста кто чем может.
Имеется книга с двумя листами "Каталог" и "Прайс". Необходимо сравнить данные листов по артикулу и на листе "Каталог" выделить артикулы, которых нет на листе "Прайс", а на листе Прайс наоборот - которых нет в каталоге.
Пример прикрепляю.
Макрос по замене данных в ячейках на данные из другого листа
 
Приветствую пользователей данного форума.
Столкнулся с проблемой и прошу Вашей помощи, чтобы ее побороть. Использую MS Office 2013 (рус).
Имеется excel файл с несколькими листами:
листы №1...n содержат одинаковые по структуре таблицы с содержанием необходимых сведений, некоторые из которых подлежат замене по шаблону

лист №n+1 содержит данные для замены

Необходимо на листах №1...n произвести замену кода в поле "Наименование" на его расшифровку, которая берется из листа №n+1, причем при отсутствии кода в расшифровке, исходная ячейка должна остаться без изменений.

В результате поиска по данному форуму частично решил свою проблему, путем использования следующего макроса:
Код
Sub Zamena()
Dim b
For Each b In [b2:b88]
b.Value = Evaluate("VLookup(" & b.Adress & ",'ForReplace'!A2:'ForReplace'!B5,2,0)")
Next
End Sub 
Однако остались следующие проблемные вопросы:
1. Как оставить код, которого нет в расшифровке нетронутым? После работы данного макроса, в случае отсутствия расшифровки кода получаем результат #Н/Д. Пытался решить проблему с использованием IFERROR, однако попытка не увенчалась успехом.
2. В макросе для примера указан массив b2:b88, и после его работы в графе "B" после 7-ой строки по 88-ую получаем #Н/Д, а хотелось бы видеть там пустые ячейки, так как макрос универсальный и на одних листах 5 записей, а на других 88.
3. Как заставить макрос после его запуска сработать сразу на всех листах №1...n, за исключением листа №n+1 (в данном случае листа ForReplace)?

Пример с данным макросом прикрепляю.

Если данный пример уже обсуждался, прошу не пинать, заранее извиняюсь.
Страницы: 1
Наверх