powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Глюк Екселя или я туплю????? Тривиально!!!
11 сообщений из 11, страница 1 из 1
Глюк Екселя или я туплю????? Тривиально!!!
    #33500522
klopik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имею Excel файл. 45000 строк. 5 столбцов. Пытаюсь сделать автофильтр по одной из колонок и скопировать в новый лист (можно и в рабочую книгу, эффект один!). Типа "раскидать" табличку по листам.
Имеем записанный макрос:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Sub test()

    Rows("1:1").Select
    Selection.AutoFilter
    Selection.AutoFilter Field:= 2 , Criteria1:="1002"
    Range("A1").Select
    Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
    Selection.Copy
    Sheets.Add
    ActiveSheet.Paste

End Sub

Вылетает на последней строке, там где идет вставка данных с ошибкой 1004 Типа "Метод Paste из класса WorkSheet завершен неверно!"
Народ, помогите, что это??? Я пробовал по-всякому уже. Одно и то же!!!
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33500632
klopik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добавлю еще:
При записи любого макроса функция "Paste" перестала записываться!
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33501244
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
скорее всего из-за того, что операция Sheets.Add сшибает буфер, созданный
Selection.Copy
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33501379
klopik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Короче, проблема так и не разрешилась.
Еще один неизвестный глюк екселя, который проявляется лишь в моем файле: когда записываешь макрос, то "paste" вообще он писать не хочет!
Когда пытаешься вручную дописать эту операцию - он копирует, однако сразу вылетает с ошибкой 1004 после выполнения вставки. Очень странно.
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33501578
5631
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, у тебя проблемы с буфером обмена Windows, а не с Excel ?
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33501678
klopik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да нет. Попытался записать макрос внутри этого файла на другом компьютере - такая же ситуция. Нонсенс!
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33501840
Letter_D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ручками-то копируется?
Возможно просто выставлена защита листа.
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33502042
klopik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ручками все копируется прекрасно. Защиты нет, так как создавал файл сам.
Короче решил проблему следующим образом: взял по-тупому перекопировал все в новый файл вместе с кодом и данными. Заработало.
Что было? Непонятно...
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33794430
DenDY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Топик конечно офф. но через пол года такая же фигня была и у меня. Как решить эту проблему с пастом так и не знаю
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33794494
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как правильно уже написали, буфер обмена очищается при добалвении нового листа, хотя у меня все прекрасно работает (Excel 2003 SP2).

Попробуй следующий вариант.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Public Sub X()
    Dim rng As Range
    Dim wsCurrent As Worksheet
    Dim wsNew As Worksheet
    
    Set wsCurrent = ActiveSheet
    Set rng = wsCurrent.Rows("1:1")
    
    rng.AutoFilter
    rng.AutoFilter Field:= 2 , Criteria1:="1002"
    
    Set wsNew = Worksheets.Add
    wsCurrent.AutoFilter.Range.Copy Destination:=wsNew.Range("A1")
End Sub
...
Рейтинг: 0 / 0
Глюк Екселя или я туплю????? Тривиально!!!
    #33794637
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Dim rgBD As Range, rgCriteria as Range

Set rgBD = ActiveSheet.Range("A1").Currentregion 'определяем диапазон базы данных
Set rgCriteria = ActiveSheet.Range("G1:G2") ' определяем диапазон критериев - в G1 д.б. имя поля по которому будем фильтровать

rgCriteria.Cells( 2 ,  1 ).Value =  1002  ' устанавливаем критерий отбора

WorkSheets.Add
rgBD.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=rgCriteria, CopyTo:=Range("A1"), Unique:=False 'выполняем метод "расширенный фильтр" объекта Range.

Подробнее о расширенном фильтре см. в справке.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Глюк Екселя или я туплю????? Тривиально!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]