Excel VBA Ошибка при вставке данных на новый лист - PullRequest
0 голосов
/ 28 марта 2012

Я вставляю под фрагмент кода, который выбирает только видимые строки и вставляет его на новый лист для дальнейшей обработки. Однако при попытке вставки происходит сбой с ошибкой «Excel не может завершить операцию с ресурсами. Пожалуйста, закройте некоторые программы или попробуйте позже». Любая альтернатива этому коду? Кстати, это Excel 2007.

Function createSummary()
    ActiveSheet.Outline.ShowLevels RowLevels:=2
    Cells.Select
    Selection.SpecialCells(xlCellTypeVisible).Select
    Application.CutCopyMode = False
    Selection.Copy

    Worksheets.Add().Name = "Summary"
    ActiveSheet.Paste
    Cells.Font.Bold = False

    Columns("A").Insert

1 Ответ

2 голосов
/ 29 марта 2012

Не видя вашей книги, похоже, что у вас какие-то проблемы с памятью.

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

With ActiveSheet
    .Outline.ShowLevels RowLevels:=2
    .UsedRange.SpecialCells(xlCellTypeVisible).Copy Worksheets.Add().[A1]
End With

With ActiveSheet
    .Name = "Summary"
    .UsedRange.Cells.Font.Bold = False
    .Columns("A").Insert
End With
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...