Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2010, 21:26   #1
Tsvetochek
 
Регистрация: 03.05.2010
Сообщений: 8
По умолчанию Перенос данных с разных листов в один с фильтром...

Здравствуйте, уважаемые программисты.
У меня такая проблема, наверно она уже обсуждалась тут, но я так и не нашла решение своей задачи.

Есть четыре листа:
- Отчет
- Sony Ericsson
- Nokia
- Samsung

на последних трех листах отображается список товара, и какой из них был продан в течении дня.

Дак вот, при нажатии кнопки на листе "отчет" нужно чтобы отобразились только проданные товары по отдельным группам. Смотрите приложение.
Вложения
Тип файла: rar Excel.rar (2.6 Кб, 20 просмотров)
Tsvetochek вне форума Ответить с цитированием
Старый 15.05.2010, 10:15   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Смотрите вложение
Вложения
Тип файла: rar Excel.rar (11.1 Кб, 47 просмотров)
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 15.05.2010, 16:22   #3
Tsvetochek
 
Регистрация: 03.05.2010
Сообщений: 8
По умолчанию

Цитата:
Сообщение от doober Посмотреть сообщение
Смотрите вложение
Спасибо, работает!!!
А можете объяснить что обозначает каждая строчка в макросе, чтобы мне привязать его к своему реальному отчету?
Tsvetochek вне форума Ответить с цитированием
Старый 15.05.2010, 17:06   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Код:
Sub COPY_D()

Dim m As Integer, rCo As Integer
Application.ScreenUpdating = False 'Выключаем обновление экрана
For n = 2 To 4 'Бегаем по листам с 2 по 4

 Sheets(n).Range("A1:C1").AutoFilter  ' На диапазон ставим фильтр с условием что в третьем столбике скрыть пустые ячейки.
 Sheets(n).UsedRange.AutoFilter Field:=3, Criteria1:="<>"

 rCo = Sheets(1).Range(("a1"), Sheets(1).Range("a" & Rows.Count).End(xlUp)).Rows.Count  'Определяем номер последней строки Листа1,не пустой
 
Sheets(n).UsedRange.SpecialCells(xlCellTypeVisible).Copy Sheets(1).Cells(rCo + 2, 1) 'Копируем видимые ячейки с выбраного листа на 1 лист в позицию через строку.
 
Sheets(n).Range("A1:C1").AutoFilter 'Отпускаем фильтр с выбраного листа
 
Next 'Бежим к следующему листу
 Application.ScreenUpdating = True 'Включаем обновление экрана
End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Транспонирование множества данных из разных книгах или из разных листов на 1 лист посредством макроса Тантана Microsoft Office Excel 6 18.12.2014 13:04
Задача на копирование ячеек из разных листов на один. hozpraktik Microsoft Office Excel 8 28.05.2010 10:00
генерация таблицы фильтром, перенос данных в исходную soulfree Microsoft Office Excel 7 28.01.2010 18:19
График-диаграмма основанная на данных с разных листов.Help Inside Microsoft Office Excel 2 20.10.2009 00:30