Автофильтры. Как проставить значения в отфильтрованный диапазон? - VBA
Формулировка задачи:
Добрый день!
Суть задачи такая(упрощаю, так как на самом деле там десятки тысяч строк в 50 таблицах):
Исходные данные:
таблица Имя-Должность-ЗарплатаНеобходимо:
На основе автофильтра по должности (например по маске "=*менеджер*") записать в таблицу зарплату, указанную в соседней ячейке.Что пробовал:
Рекордером записал макрос, в котором выбирал нужное значение автофильтра, записывал в верхнюю строку нужное значение, и потом протягиванием вниз изменял данные в отфильтрованных данных. Проблема в том, что если в макросе прописываешь то, что пишет рекордер, то изменяются вся таблица, а не отфильтрованный диапазон. Подскажите, пожалуйста, как это сделать? Файл прикладываю: https://yadi.sk/i/LVu0mx1l3GT67KРешение задачи: «Автофильтры. Как проставить значения в отфильтрованный диапазон?»
textual
Листинг программы
- Sub pr()
- kr = Cells(Rows.Count, 3).End(xlUp).Row
- sMask = Cells(2, 9).Value
- Zpl = Cells(3, 9).Value
- For Each x In Range("c5:c" & kr)
- If x Like sMask Then x.Offset(, 1) = Zpl
- Next
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д