фильтрация и копирование данных на другой лист

Программирование на Visual Basic for Applications
aniutik
Новичок
Новичок
 
Сообщения: 28
Зарегистрирован: 25.05.2004 (Вт) 9:38

фильтрация и копирование данных на другой лист

Сообщение aniutik » 26.05.2004 (Ср) 10:05

Мне нужно последовательно отфильтровать таблицу данных по каждому из значений первого столбца.
Затем результаты каждого фильтра нужно по отдельности скопировать на другой лист, для того, чтобы производить другие вычисления.
Помогите, пожалуйста :cry:

Calvin
Постоялец
Постоялец
 
Сообщения: 409
Зарегистрирован: 21.01.2003 (Вт) 12:13
Откуда: Sebastopol

Сообщение Calvin » 27.05.2004 (Чт) 17:35

Ну на счет отфильтровать, то это лень думать....., а на счет переноса, то вот так
Код: Выделить всё
Range(Range("a1"), Range("a1").End(xlDown)).Copy

а потом вставляй куда нужно...........
-Whose the motocycle, is this? -It`s a chopper, baby! -Whose chopper is this? -Zed`s! -Who is Zed? -Zed`s dead, baby, Zed`s dead! :-D

Calvin
Постоялец
Постоялец
 
Сообщения: 409
Зарегистрирован: 21.01.2003 (Вт) 12:13
Откуда: Sebastopol

Сообщение Calvin » 27.05.2004 (Чт) 17:52

на счет того, чтобы фильтровать данные, а потом их перенести на другой лист.....а не проще все данные перенести на другой лист и отсортировать по тому полю, по которому собираешься фильтровать?????
-Whose the motocycle, is this? -It`s a chopper, baby! -Whose chopper is this? -Zed`s! -Who is Zed? -Zed`s dead, baby, Zed`s dead! :-D

aniutik
Новичок
Новичок
 
Сообщения: 28
Зарегистрирован: 25.05.2004 (Вт) 9:38

Сообщение aniutik » 28.05.2004 (Пт) 6:42

мне нужно, чтобы каждый из результатов фильтра был на отдельном листе.
Например все данные с вариантом 1 на листе вар1, с вариантом 2 - на листе вар2 и т.д.

Calvin
Постоялец
Постоялец
 
Сообщения: 409
Зарегистрирован: 21.01.2003 (Вт) 12:13
Откуда: Sebastopol

Сообщение Calvin » 30.05.2004 (Вс) 21:38

я не тестил, так что сама проверяй, а вообще вроде так:
Код: Выделить всё
i=1
Do While Cells(i, 1).Value <> ""

  For Each List In Sheets
     If List.Name = Cells(i, 1).Value Then GoTo 1
  Next
    Selection.AutoFilter Field:=1, Criteria1:=Cells(i, 1).Value
    Range(Cells(1, 1), Cells(1, 1).End(xlDown)).Copy
    Sheets.Add(After:=Sheets(Sheets.Count)).Name = Cells(i, 1).Value
    ActiveSheet.Paste Destination:=Cells(1, 1)
    Application.CutCopyMode = False
  Sheets("исходный").Select
1 i = i + 1
Loop
-Whose the motocycle, is this? -It`s a chopper, baby! -Whose chopper is this? -Zed`s! -Who is Zed? -Zed`s dead, baby, Zed`s dead! :-D

EVG13
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 24.06.2004 (Чт) 16:50

Сообщение EVG13 » 25.06.2004 (Пт) 10:09

День добрый Вам. Я достаточно слабо знаю ВБА. Это есть проблема. Но все же. Фрагмент кода Вами приведенный ругается на строку Selection.AutoFilter Field:=1 Говорит метод завершен неверно. Если не ошибаюсь, этим задается столбец, по которому проводится анализ и последующая выборка.

В чем неправ я? Помогите если не сложно. В принципе, если у Вас есть немного свободного времени я могу в риалтайме уточнить это у Вас в аське - например поздно вечером .

заранее благодарен.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 54

    TopList